MATLAB Winをコマンドラインで実行

Windowsコマンドプロンプトから呼び出す例:

matlab -nodesktop -nosplash -r "fprintf('1+2=%d\n', 1+2); exit;"

MATLAB command windowが起動し、その中で1+2=3と表示された直後にwindowが閉じる。関数を呼び出すところは二重引用符を使う。


Windowsマシンのcygwinにリモートログインして呼び出す例:

matlab.exe -nodesktop -nosplash -r "fh=fopen('C:\\Users\\golgo8128\\Desktop\\testfile1.txt','w');fprintf(fh,'1+2=%d\n', 1+2);exit;"

標準出力や標準エラー出力には特に何も表示されないように見えるが、関数はちゃんと実行され、テストファイルが生成されるようだ。MATLAB 2012bで確認。

ファイルパスはcygwin内指定ではなく、Windows指定(?)になるので注意。cygwinフォルダーにファイルを出力したい場合は、

matlab.exe -nodesktop -nosplash -r "fh=fopen('E:\\WinAppl2\\cygwin\\home\\golgo8128\\TMP\\testfile1.txt','w');fprintf(fh,'1+2=%d\n', 1+2);exit;"

のようにcygwinフォルダーを明示する必要あり。