如何从命令行运行Matlab?

12

是否可以从Mac命令行运行Matlab命令?


2
我没有Mac,但你尝试过matlab -nodesktop吗? - laxxy
我尝试了,但命令行无法识别“matlab”命令。 - Stan
2
我的猜测是,您需要指定完整路径。 - PearsonArtPhoto
3个回答

16

matlab脚本位于MATLAB应用程序包的bin子目录中。在我的电脑上,这意味着我可以这样运行它:

/Applications/MATLAB_R2012a_Student.app/bin/matlab

如果你想将这个bin目录加入到你的路径(这样你就可以直接运行matlabmex等),请编辑或新建一个名为.bash_profile的文本文件,放在你主目录的顶层,并添加如下一行内容:

export PATH=/Applications/MATLAB_R2012a_Student.app/bin:$PATH

将"MATLAB_R2012a_Student"部分替换为实际的MATLAB应用程序包名称。这不会影响当前打开的终端,但新打开的终端应该可以正常使用。


我使用了相同的方法,它有效。但是如果我想保留以前版本的MATLAB,并且我想在我的计算机上同时运行两个版本?我可以添加两个路径吗? - Nicholas
2
添加两个路径是没有用的,因为每个 MATLAB 版本的命令名称都相同 - 计算机不是心灵读者,所以它只会选择列表中的第一个。相反,您可以创建 shell 别名,如 alias matlab2012="/Applications/MATLAB_R2012.app/bin/matlab。然后,运行 matlab2012 将运行该特定版本。Shell 别名并不是神奇地保存,因此将它们添加到您的 ~/.bashrc 文件中,以确保别名在启动 shell 时设置。 - kwatford
非常感谢,我不知道我可以使用那个。 - Nicholas
你可能想要指定一些选项,以便GUI不会加载,例如.../bin/matlab -nodesktop -nosplash' - mathandy

1

您需要获取MATLAB可执行文件的完整路径,并且可以使用-r选项在启动MATLAB时运行命令,具体请参考此处的文档。


0

如上所述,您需要首先编辑您的 .bash_profile 文件,添加以下行(将 'MATLAB_R2020b' 替换为您的 MATLAB 版本)

export PATH=/Applications/MATLAB_R2020b.app/bin:$PATH

然后在重启终端后,您可以通过输入该命令来打开MATLAB

/Applications/MATLAB_R2020b.app/bin/matlab

你还可以通过定义工作目录文件夹和可执行脚本及其路径来运行你的 .m 脚本。你只需要在上述命令中添加更多的指令即可。
/Applications/MATLAB_R2020b.app/bin/matlab -r "addpath(genpath('{Your working directory folder path}')); cd {Your working directory folder path}; {Your script name}; {Your other script name}; quit;"

请从以下链接中查找MATLAB命令行参数的更详细描述:

https://www.mathworks.com/help/matlab/ref/matlabmacos.html#d122e801165


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接