web-dev-qa-db-ja.com

現在実行中のLinuxプロセスをバックグラウンドで実行するにはどうすればよいですか?

Linuxシェルからgitを使用してリモートサーバーにファイルをアップロードするコマンドがあり、完了するまでに何時間もかかります。

実行中のプログラムをバックグラウンドで実行するにはどうすればよいですか?私はまだシェルで作業でき、そのプロセスも完了しますか?

96
user825904

Ctrl + Zキーを押して、コマンドbgを使用して、プロセスをバックグラウンドにします。

編集

ターミナルを強制終了することもできるプロセスを開始し、引き続き実行する

Nohup [command] [-args] > [filename] 2>&1 &

例えば.

Nohup /home/edheal/myprog -arg1 -arg2 > /home/edheal/output.txt 2>&1 &

出力を無視する(あまり賢くない)には、ファイル名を/dev/nullに変更します

別のファイルに設定されたエラーメッセージを取得するには、&1をファイル名に変更します。

183
Ed Heal