假设我在以下位置有一个m文件:C:\M1\M2\M3\mfile.mMatlab的exe文件位于以下位置:C:\E1\E2\E3\matlab.exe我想通过命令行在Matlab中运行此m文件,例如在.bat文件中。我该怎么做,有办法吗?
3 回答
![?](http://img1.sycdn.imooc.com/5333a0780001a6e702200220-100-100.jpg)
蝴蝶不菲
TA贡献1810条经验 获得超4个赞
这样的命令将成功运行m文件:
"C:\<a long path here>\matlab.exe" -nodisplay -nosplash -nodesktop -r "run('C:\<a long path here>\mfile.m');"
![?](http://img1.sycdn.imooc.com/545866130001bfcb02200220-100-100.jpg)
回首忆惘然
TA贡献1847条经验 获得超11个赞
我认为前面的答案中没有提到的重要一点是,如果未明确指出,则matlab解释器将保持打开状态。因此,在@hkBattousai的答案中,我将添加exit命令:
"C:\<a long path here>\matlab.exe" -nodisplay -nosplash -nodesktop -r "run('C:\<a long path here>\mfile.m');exit;"
![?](http://img1.sycdn.imooc.com/5333a0490001f9ff02200220-100-100.jpg)
智慧大石
TA贡献1946条经验 获得超3个赞
在Linux上,您可以这样做,并且实际上可以将自定义错误代码发送回Shell,如下所示:
#!/bin/bash
matlab -nodisplay -nojvm -nosplash -nodesktop -r \
"try, run('/foo/bar/my_script.m'), catch, exit(1), end, exit(0);"
echo "matlab exit code: $?"
matlab exit code: 1如果脚本抛出异常,则打印,matlab exit code: 0否则显示。
添加回答
举报
0/150
提交
取消