質問に示すように、以前に送信したジョブが完了した後にコマンドを実行する方法を知りたいです。 Linuxコマンドを順番に実行する方法を知っています。
私のLinuxシェルはbashです。
しかし、私の場合、bashスクリプトのすべての行はLinuxコマンドではありません。提出する作品があります。
ln -sf datafile DATA; # link datafile to a directory named "DATA".
jsub -q DEAL ncl run.ncl; # use jsub to submit a job. jsub is a queuing system.
mv output Postdata # move the output file "output" from run.ncl to a directory named "Postdata".
このコードを実行するために使用する方法は次のとおりです。これら3つのコマンドラインを「run.sh」というbashスクリプトファイルに入れます。その後、端末に「./run.sh」と入力しました。このスクリプトの実行後に失敗しました。 2番目のコマンドの出力ファイルを別のディレクトリに移動しようとしているため、3番目のコマンドを実行できないというポップアップが表示されます。しかし、2番目のコマンドは出力を取得するのに長い時間がかかります。
この問題を処理する方法についていくつかのアイデアを提供できますか?