0

我从下面的问题中得到了答案。它要求我创建一个 bash 文件。问题在标题中

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

因此,我尝试了以下代码,如答案中所示。

    b_exec=matlab
    X="localize(r,q)"
    echo ${X} > matlab_command_rq.m
    cat matlab_command_rq.m 
    ${matlab_exec} -nojvm -nodisplay -nosplash < matlab_command_rq.m
    rm matlab_command_rq.m

答案中的原始代码是

    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

在解释中,他们提到 $1 是函数,$2 是输入。相应地,我用我的函数'localize'和输入(r,q)替换了它

但我收到以下错误

    localize(r,q)
    ./matlab_batcher.sh: 5: ./matlab_batcher.sh: -nojvm: not found

回声似乎正在工作。但我真的不知道在那之后会发生什么。你能帮我告诉我用它的参数调用matlab函数的正确方法吗???

我使用以下语句调用它

   sh ./matlab_batcher.sh localize r q
4

1 回答 1

1

你需要改变你的b_exec背部matlab_exec,或者你需要改变

${matlab_exec} -nojvm ...

${b_exec} -nojvm ...

无论哪种方式,您都需要使其保持一致。

于 2013-01-25T20:06:54.330 回答