如何从命令行运行matlab并打印到命令行?

时间:2018-03-09 05:32:12

标签: matlab command-line-interface

我想在Windows dos终端上运行一个脚本,脚本将在这里显示" Hello world"到终端我从例如

执行了这个
  

matlab.exe -nosplash -nodesktop -nojvm -wait -r printToCommandLine.m

printToCommandLine.m包含:

  

system(sprintf(' echo Hello world'));

但它只打印到执行脚本

时生成的matlab命令窗口

1 个答案:

答案 0 :(得分:1)

首先,如果语法发生了变化,我不是一般的,但我必须调用没有文件扩展名'.m'的脚本:

matlab.exe -nosplash -nodesktop -nojvm -wait -r printToCommandLine

否则我将在MATLAB中收到错误。

第二次,这只是一种解决方法,但您可以将当前的命令行输出打印到日志文件,例如'log.txt'使用

matlab.exe -nosplash -nodesktop -nojvm -wait -logfile "log.txt" -r printToCommandLine

日志文件将在运行时更新。为了测试这个,我创建了一个小的示例脚本,看看'log.txt'在执行过程中是如何变化的:

disp('Script execution started. Waiting 10 seconds...')
pause(10)
disp('...waited 10 seconds.');

这不是您想要的,但它让您有机会在执行期间(在文本文件中)获取有关当前命令行输出的实际信息。

我们使用它来进行自动(远程)测试,以便在测试通过

之后将我们的MATLAB命令行输出打印到控制台
type log.txt