我怎么能停止MATLAB返回后直到命令行脚本完成?
-
08-06-2019 - |
题
我看到在MATLAB帮助(matlab -h
),我可以使用 -r
指定一个标志 m
-文件的运行。我注意到,当我这样做,MATLAB似乎开始脚本,但立即返回。脚本流程的现,但主要应用程序已经返回。
是否有任何方式获得MATLAB只返回一次该命令是完了吗?如果你打电话是从一个单独的程序,它似乎是很容易的过程比中使用的文件或座确认完成。
为了说明,这里是一样的功能 waitHello.m
:
function waitHello
disp('Waiting...');
pause(3); %pauses 3 seconds
disp('Hello World');
quit;
我尝试运行这一使用:
matlab -nosplash -nodesktop -r waitHello
解决方案
快速回答:
matlab -wait -nosplash -nodesktop -r waitHello
在Matlab7.1(该版本的我还有)有无证件的命令行的选择-待在matlab。蝙蝠。如果它不能为你的工作版本,你很可能增加。这里是我发现了什么。该命令在底,终于启动matlab是(线153):
start "MATLAB" %START_WAIT% "%MATLAB_BIN_DIR%\%MATLAB_ARCH%\matlab" %MATLAB_ARGS%
在语法相关指令开始(见"帮助启动"中cmd.exe)在这种情况是:
start ["window title"] [/wait] myprogram.exe args ...
高一点,在所有有记录的命令行的选择,我发现(60行):
) else if (%opt%) == (-wait) (
set START_WAIT=/wait
) else (
因此,指定-等等应该做你想做的,只要你也退出matlab从你的脚本(否则将等待你的到终止它的交互式).
不隶属于 StackOverflow