matlab可以不启动图形界面运行,比如
matlab -nodesktop
-nosplash
或者
matlab -nodisplay
或者
matlab -nojvm
-nosplash
matlab程序也可以在命令行里直接运行,只需要使用 -r 选项。比如运行当前目录下的example.m
matlab -nodesktop -nosplash -r example
或者
matlab -nojvm
-nosplash -r example
或者
matlab -nodisplay -r
example
可以将如下命令加到~/.bashrc文件
alias mrun='matlab -nodesktop -nosplash -r'
这样下次(或者执行source ~/.bashrc)之后就可以直接
mrun example
来在命令行运行matlab文件。
如果使用 -nodisplay -r
选项运行,当程序中有figure()命令时会出错,可以使用如下选项抑制图形的显示:
figure('visible','off');
并使用如下命令将图形输出到文件:
print('-deps','example.eps');
或者
hgsave('example.fig');
有关matlab startup option 和 command line 运行
在 UNIX 下
-nodesktop 启动jvm(Jave
Virtual Machine),不启动desktop,但help 界面,preferences界面等仍可通过cmdline
调出,即jvm启动但不启动desktop,可以启动其他显示;但是matlab不会在cmd history记录本次执行的命令
-nodisplay 启动jvm,不启动desktop,不启动任何显示相关,忽略任何DISPLAY 环境变量;即jvm启动但不能显示
-nojvm 不启动jvm,则与之相关的一切活动将无法进行,包括图形界面显示,help 界面,preferences界面等
即jvm不启动故不能显示
-nosplash 只是不显示启动时的log画面,jvm,desktop等正常启动
对UNIX 而言,推荐通过Desktop > Desktop Layout
> Command Window > Only 设置只显示
command-line interface 而 不要用-nodesktop (why?)
在Windows下
对windows而言,-nodisplay 似乎无效,还是会显示desktop; -nojvm, -nodesktop
不显示desktop,但是会出现简洁的command-line
窗口,也就是说并不会完全没有图形界面,无法像linux一样,只在cmdline操作
用Desktop > Desktop Layout > Command
Window > Only 设置只显示 command-line interface
后,其他窗口并不会消失
另外 :
-r 运行matlab cmd命令,多条命令相互用分号或逗号隔开(空格不行),用双引号引起;一条命令可以不用双引号。
这多用在批处理模式下,所运行的文件必须在matlab的启动目录下或者在其搜索路径上,且不能带有路径名和后缀名,
-logfile 保存cmdline输出到文件