如何在ssh中调用matlab函数/脚本?

时间:2018-03-21 19:55:16

标签: matlab ssh

在文件S.m中我存储:

function s = S(a, b)
    s = a + b;

我尝试从ssh shell调用这个函数:

matlab -r -nodisplay "S 3 5" > sum.txt

我得到“输入中的参数不够”错误。谁能看到原因呢?

1 个答案:

答案 0 :(得分:1)

# Add default JVM options here. You can also use JAVA_OPTS and POCKETKNIFE_OPTS to pass JVM options to this script. DEFAULT_JVM_OPTS='"-XX:+UseSerialGC" "-XX:MaxHeapFreeRatio=10" "-XX:MinHeapFreeRatio=10" "-Xms32M" "-Xmx128M" "-Dfile.encoding=UTF-8"' 参数介绍了要执行的命令。这两者不能被其他论点分开。也就是说,你可以写

-r

matlab -nodisplay -r "S 3 5" > sum.txt

让MATLAB运行带有输入参数的函数matlab -r "S 3 5" -nodisplay > sum.txt ' 3'和' 5'。有关详细信息,请参阅the official documentation of the UNIX command matlab。有一个单独的documentation page for Windows,其中允许使用不同的选项,但S开关仍应有效。

请注意MATLAB语句

-r

相当于

S 3 5

也就是说,参数被视为字符串。使用S('3','5') 函数将它们转换为数字。