如何在后台运行matlab?

时间:2015-04-07 14:19:10

标签: java matlab command-line sublimetext3

我目前正在使用Matlab .m文件的外部编辑器,其自定义构建系统从命令行调用Matlab来运行Matlab脚本(使用-nosplash-nodesktop )。然而,这会产生两个问题:

1)Matlab在运行脚本后立即关闭:我在脚本中调用的任何窗口或图都在运行脚本后立即关闭,这显然会在几秒钟内发生。

2)每次运行脚本都会有一点延迟,因为Matlab实际上是从头开始的。

所以我想知道是否有可能让Matlab在后台运行,并且只是在我想要的时候运行脚本?

我正在运行Linux 64位,Matlab 2013a和Sublime Text 3.

编辑:我使用基本脚本测试设置:

a=5;
figure
plot(a);

EDIT2:我通过运行的Sublime Text构建系统调用Matlab:

matlab -nosplash -nodesktop <[script].m

1 个答案:

答案 0 :(得分:0)

没有办法让Matlab在后台运行,并且只需要随时运行脚本即可。没有在某个地方打开交互式会话。

假设您的系统有一个自定义包装器matlab-wrapper,用于在后台提交脚本。您可以这样调用您的脚本:

$ matlab-wrapper myscript.m

可能,matlab-wrapper正在做这样的事情:

#!/bin/bash
/apps/matlab14a/bin/matlab -nodesktop -nosplash -r run\ "$1",exit

甚至更多,通过qsub或其他命令将上述脚本提交给调度程序。

密钥是修改包装器脚本以找到实际调用Matlab二进制文件的部分。如果您的系统允许,您可以复制包装器脚本并进行修改。 (通过简单地删除-r run\ "$1"文本或更复杂的内容。)然后,您应该能够根据系统上的自定义配置启动Matlab的交互式版本,并从Matlab命令窗口调用脚本。 / p>