フォアグラウンドでプログラムを実行していると仮定して、ctrl-Z を押します。 、次に:
[1]+ Stopped myprogram
$ disown -h %1
$ bg 1
[1]+ myprogram &
$ logout
ジョブが 1 つしかない場合は、ジョブ番号を指定する必要はありません。 disown -h
を使用するだけです と bg
.
上記の手順の説明:
ctrl-Z を押します。システムは実行中のプログラムを一時停止し、ジョブ番号と「停止しました」というメッセージを表示して、bash プロンプトに戻ります。
disown -h %1
を入力します コマンド (ここでは 1
を使用しました) ですが、Stopped
に表示されていたジョブ番号を使用します。 SIGHUP
を無視するようにジョブをマークします。 シグナル (ログアウトしても停止しません)。
次に、bg
を入力します 同じジョブ番号を使用するコマンド。これにより、バックグラウンドでプログラムの実行が再開され、それを確認するメッセージが表示されます。
ログアウトしても、引き続き実行されます..
nohup
を試してみてください バックグラウンドで実行:
nohup sleep 3600 &
プログラム画面を試してみます。