2016-05-31 22 views
3

私は非常に簡単な質問があります。linuxで実行されているMATLABスクリプトを確認してください

3つまたは4つのMATLABスクリプトを実行する複数のスケジュールされたbashファイルを作成しました。ような何か:

cat /pathtobash/bash_script.sh 
#!/bin/bash 

~/path/run_mat_script.sh ~/path2/matlab matlab_script 
~/path/run_mat_script.sh ~/path3/matlab matlab_script2 
~/path/run_mat_script.sh ~/path2/matlab matlab_script3 

1のものMATLABスクリプトの1つ(または複数)のbashスクリプトは、私が失敗している1方法を見つけることができ、それが必要として実行し、ちょうど「ハング」

されていませんか?

"top"と "ps"の両方のコマンドを試しましたが、MATLABコマンドが実行中であることがわかりました。例えば

ps ax | grep MATLAB 
    498 ?  Sl 45:00 /opt/matlab/bin/glnxa64/MATLAB -nodisplay -nosplash 
2059 ?  Sl 32:35 /opt/matlab/bin/glnxa64/MATLAB -nodisplay -nosplash 
4098 ?  Sl 14:33 /opt/matlab/bin/glnxa64/MATLAB -nodisplay -nosplash 
5690 pts/9 S+  0:00 grep MATLAB 
29409 ?  Sl 70:20 /opt/matlab/bin/glnxa64/MATLAB -nodisplay -nosplash 
29797 ?  Sl 69:10 /opt/matlab/bin/glnxa64/MATLAB -nodisplay -nosplash 
32233 ?  Sl 50:00 /opt/matlab/bin/glnxa64/MATLAB -nodisplay -nosplash 

は、私は、あなたが固有の識別番号に実行中のスクリプトのそれぞれを一致させることができ、bashの各呼び出しの後、最後のPIDを印刷しようと助け

答えて

1

私はこのような何かをするだろう。

./proc1 & 
proc_1=$! 
./proc2 & 
proc_2=$! 

#Wait for processes to finish   
if `echo wait $proc_1 $proc_2`; then 
    echo success 
else 
    echo "A proc failed, either: $proc_1 $proc_2" 
fi 

#Check exit status 

echo $? 

もちろん、作成時には、echo "Pid:$proc_2"を使用してpidsを印刷できます。

関連する問題