私は、リモートマシン上の大きな数学的計算ジョブの実行を自動化するスクリプトが必要です。現在、私はこれを行います:ssh、nohup、次に結果をコピー
ssh
リモートマシンへ: matlabスクリプトを実行する- ジョブが完了したかどうかを定期的に確認してください
- 私は手動で結果を含むファイルを私の家のマシンに戻して、私は手動で
scp
を返します。
私は(スクリプトは私のマシン上で実行されます)この仕事をするために私のスクリプト内の行のこれらの種類を使用しようとしました:
ssh nohup matlab -r theScript; exit;
scp [email protected]~/files ~/files
これは動作しません。しばらくしてsshセッションが終了し、ジョブはまだ完了せず、ファイルがまだ存在しないにもかかわらず、scpを実行するだけでスクリプトが進行します。
私は、ジョブが完了したかどうか定期的にチェックして、nohup.out
ファイルを読んで、grepを使ってDONE!
シグナルを探しているかどうかをチェックすることを考えます。それから私はそれを見ると、ファイルをコピーします。しかし、これは複雑に思えますし、私はを受け取りました。DONE
シグナルが表示されたら、条件付きで実行するメッセージをコンピュータに戻す方法はわかりません。