web-dev-qa-db-ja.com

Nohupコマンドを実行した後、出力コンソールを表示するにはどうすればよいですか?

Linuxサーバーでコードを実行しています。実行には数時間かかるので、サーバーへの接続が失われた場合にコードが実行されていることを確認するために、Nohupを使用する必要があります。繰り返しますが、結果を見るのに何時間も待たなければならないので、コードの進行状況(%)を出力するカウンターを定義しました。サーバーへの接続を失ったり、ターミナルを閉じたりした場合、コードがまだ実行されていることを確認できる唯一の方法は、topを使用することです。出力コンソール(進行状況を示すメッセージ)を再度表示できる方法はありますか?

15
MTT

標準出力と標準エラーをファイルにリダイレクトして、そのファイルを見ることができます。例えば:

Nohup command 2>&1 > outputfile &

manページのデフォルトの動作に注意してください:

標準出力が端末の場合、可能であれば「Nohup.out」に出力を追加し、そうでない場合は「$ HOME/Nohup.out」に追加します。標準エラーが端末の場合、標準出力にリダイレクトします

本当に実行できます

Nohup command &

そして、Nohup.outを見てください

12
Mike Atkins

別の端末から以下を実行すると、リアルタイムで出力を確認できます。

tail -f Nohup.out
34
yfpb