【问题标题】:How to call MATLAB from the command line several times, using the same MATLAB instance every time如何从命令行多次调用 MATLAB,每次都使用同一个 MATLAB 实例
【发布时间】:2014-10-24 15:37:18
【问题描述】:

我有一个从 Windows 命令行(又名或提示符)调用的 .m 脚本,我每天使用不同的参数多次(50 次以上)调用此脚本。

我尝试使用matlab -r "run script.m" 并且脚本正确执行,但每次我发出此提示命令时都会打开一个新的 MATLAB 实例,这在这种情况下是不可取的。

有没有办法确定我的 Windows 7 机器上已经运行了一个 MATLAB 实例,并通过 Windows 命令行在多个外部调用中强制使用相同的 MATLAB 实例?

【问题讨论】:

  • 你可以通过COM控制matlab见here。我不确定命令行功能 - 但你绝对可以使用 powershell 来控制它。
  • @bdecaf:+1 好建议。事实上,使用 COM 接口,您可以重用现有会话来执行脚本(无需每次都创建新会话)
  • 事实上,我希望 MATLAB Simulink 通过 MATLAB 外部命令触发一个块(使用 hilite_system 命令)。为此, nodesktopminimize 选项无法满足我的需要。我来看看COM接口!感谢您的建议。

标签: matlab command-line


【解决方案1】:

正如here 所讨论的,您无法阻止 MATLAB 在 Windows 系统上启动时创建窗口,但是,您可以强制隐藏窗口,方法是将 start 命令与 -nodesktop-minimize 选项一起使用:

start matlab -nosplash -nodesktop -minimize -r "run script.m"

或者干脆

start matlab -nosplash -nodesktop -minimize -r script

PS:虽然这会阻止创建新的 MATLAB 实例(完整的 IDE),但这仍然会创建相同数量的 MATLAB 命令窗口(MATLAB 进程)。

【讨论】:

  • 只是为了澄清你的最后一句话:它仍然会在每次执行脚本时启动一个新的 MATLAB 进程,而无需打开完整的 IDE
猜你喜欢
  • 2018-02-26
  • 2014-08-20
  • 2014-10-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-06
  • 2014-03-06
相关资源
最近更新 更多