前提・実現したいこと
shell scriptからmatlabのスクリプトを起動するプログラムを作っています。
下記のコードでpythonコードの実行まではうまくいき,最後の行の"${CMD[@]}"でエラーが発生しています.
発生している問題・エラーメッセージ
./decode.sh: line 37: matlab: コマンドが見つかりません
該当のソースコード
#usr/bin/sh run_preprocessing(){ subj_id=$2 echo "python ./python/write_preprocessBatch.py ${subj_id}" python ./python/write_preprocessBatch.py ${subj_id} echo "python ./python/write_executeBatch.py ${subj_id} preprocess" python ./python/write_executeBatch.py ${subj_id} preprocess cd ${batch_path} CMD=(matlab "-nodisplay -r 'executeBatch_${subj_id};exit'") "${CMD[@]}" }
試したこと
①terminalからmatlabが起動できることを確認しました.
↓↓↓↓↓↓↓↓↓↓ここから実行例
$ matlab
Warning: No display specified. You will not be able to display graphics on the screen.
Warning: No window system found. Java option 'Desktop' ignored.
< M A T L A B (R) > Copyright 1984-2013 The MathWorks, Inc. R2013a (8.1.0.604) 64-bit (glnxa64) February 15, 2013
No window system found. Java option 'Desktop' ignored.
To get started, type one of these: helpwin, helpdesk, or demo.
For product information, visit www.mathworks.com.
↑↑↑↑↑↑↑↑↑↑ここまで実行例
②terminalでcd ${batch_path}に移動して,matlab -nodisplay -r 'executeBatch_${subj_id};exit'が実行されることを確認しました.
こちらでは別のエラーが発生しているものの,matlabコマンドの実行はできているように見えます.
↓↓↓↓↓↓↓↓↓↓ここから実行例
$ matlab -nodisplay -r 'executeBatch_sub02_post;exit'
< M A T L A B (R) > Copyright 1984-2013 The MathWorks, Inc. R2013a (8.1.0.604) 64-bit (glnxa64) February 15, 2013
To get started, type one of these: helpwin, helpdesk, or demo.
For product information, visit www.mathworks.com.
Initialising batch system... done.
Warning: Load failed: '001_preprocess_sub02_post.m'
In spm_jobman>load_jobs at 331
In spm_jobman at 143
In executeBatch_sub02_post at 6
Warning: No batch job found in '001_preprocess_sub02_post.m'
In spm_jobman>load_jobs at 343
In spm_jobman at 143
In executeBatch_sub02_post at 6
Error using spm_jobman (line 246)
No valid job.
Error in executeBatch_sub02_post (line 6)
spm_jobman('run', '001_preprocess_sub02_post.m', 'c')
↑↑↑↑↑↑↑↑↑↑ここまで実行例
補足情報(FW/ツールのバージョンなど)
MacOSからsshでCeotOSの計算機サーバにアクセスし,そこから実行しようとしています.
回答1件
あなたの回答
tips
プレビュー