Tim*_*Tim 10 matlab command-line batch-file
在我看来,有两种方法可以在批处理模式下运行Matlab:
第一个:
unset DISPLAY
matlab > matlab.out 2>&1 << EOF
plot(1:10)
print file
exit
EOF
Run Code Online (Sandbox Code Playgroud)
第二个使用选项"-r MATLAB_command":
matlab -nojvm -nosplash -r MyCommand
Run Code Online (Sandbox Code Playgroud)
这两个是等价的吗?
"<< EOF"和最后一个"EOF"在第一种方法中意味着什么?
感谢致敬!
第一种方法只是将标准输出> matlab.out和标准错误重定向2>&1到文件matlab.out.
然后它使用heredoc方式将输入传递给MATLAB(这不是特定于MATLAB的,它是一种将多行作为输入传递给命令行程序的方法).
语法<<后跟一个唯一标识符,然后是您的文本,最后是完成的唯一ID.你可以在shell上试试这个:
cat << END
some
text
multiple lines
END
Run Code Online (Sandbox Code Playgroud)
第二种使用该-r选项的方法启动MATLAB并执行立即传递的语句.它可能是一些命令或路径上找到的脚本或函数的名称.这相当于做了类似的事情:
python -c "print 'hello world'"
Run Code Online (Sandbox Code Playgroud)
有关其他启动选项的列表,请参阅此页面.