一尘不染

如何从Linux命令行调用MATLAB函数?

linux

基本上我有一个m看起来像

function Z=myfunc()
    % Do some calculations
    dlmwrite('result.out',Z,',');
end

我只想从命令行执行它而不进入MATLAB。我试了几个选项(-nodisplay-nodesktop-nojvm-r,等),没有一次成功。我最终进入MATLAB,必须输入“
quit”退出。

解决办法是什么?


阅读 848

收藏
2020-06-03

共1个答案

一尘不染

MATLAB可以运行脚本,但不能从命令行运行函数。这是我的工作:

档案matlab_batcher.sh

#!/bin/sh

matlab_exec=matlab
X="${1}(${2})"
echo ${X} > matlab_command_${2}.m
cat matlab_command_${2}.m
${matlab_exec} -nojvm -nodisplay -nosplash < matlab_command_${2}.m
rm matlab_command_${2}.m

输入以下内容进行调用:

./matlab_batcher.sh myfunction myinput
2020-06-03