如何在linux中运行matlab代码作为脚本文件?

时间:2014-04-23 15:03:15

标签: linux bash matlab

我正在考虑在Linux中运行类似于bash / python脚本的matlab脚本。即,一个可以作为应用程序运行的matlab脚本。

2 个答案:

答案 0 :(得分:1)

通过将以下标头添加到您想要执行的文件中,您可以在没有自定义mash脚本的情况下获得类似的效果:

#/usr/bin/bash
/path/to/matlab -r "$(sed -n -e '4,$p' < "$0")"
exit $?

如果你想在执行脚本后终止matlab,就像在你的例子中一样,你可以用

代替第二行
sed -n -e '4,$p' < "$0" | /path/to/matlab

这里的想法是执行一个bash命令,它只是剪掉脚本的标题,然后将其余部分传递给matlab。

答案 1 :(得分:0)

这是我提出的实施 -

  • 创建包含以下行的/usr/bin/mash脚本文件 -

    #!/bin/bash
    
    grep -ve '^(#!\|^\s*$)' ${@: -1} | ${@: 1:$#-1}     
    exit $?
    
  • 使mash脚本可执行 -

    $ chmod +x /usr/bin/mash
    
  • 编写名为test.msh

    的matlab脚本文件
    #!/usr/bin/mash /usr/local/MATLAB/R2012a/bin/matlab -nodisplay
    
    format long
    
    a = 2*pi           % matlab commands ...
    
  • 使test.msh脚本可执行 -

    $ chmod +x mash
    
  • 运行test.msh

    $ ./test.msh 
    
    ...
    
    >> >>  a =
    
    6.283185307179586