nohupを使用して複数のコマンドを実行する方法

nohupを使用して複数のコマンドを実行する方法

を使用して複数のコマンドを実行する必要がありますnohup。各コマンドは前のコマンドの後に実行する必要があります。

例として、次のコマンドを使用しています。

nohup wget $url && wget $url2 > /dev/null 2>&1 &

ただし、このコマンドは機能しません。

これを達成するにはどのコマンドを使用する必要がありますか?

答え1

それを梱包してくださいsh -c

nohup sh -c 'wget "$0" && wget "$1"' "$url1" "$url2" > /dev/null &

答え2

nohupを使用せずに別のシェルファイル(command.shなど)からコマンドリストを生成する方が簡単ではありませんか?

それから電話してください。

nohup bash command.sh

答え3

他の人はすでに答えていますnohup。実用的な注意:screen1つ以上のセッションでこのようなことを行うことをお勧めしますtmux。これにより、接続を切断して再接続して出力と最終結果を確認できます。

答え4

より複雑な例:

nohup sh -c 'echo $SU_PASSWORD | /afs/cs/software/bin/reauth; python -u ~/diversity-for-predictive-success-of-meta-learning/div_src/diversity_src/experiment_mains/main_sl_with_ddp.py --manual_loads_name sl_hdb1_5cnn_adam_cl_filter_size --filter_size 4 > $OUT_FILE 2> $ERR_FILE' > nohup.out$SLURM_JOBID &

関連情報