プログラムをバックグラウンドで実行する
スポンサードリンク
プログラムをバックグラウンドで実行したい場合は、コマンドの後ろに&(アンパサンド)を付けて実行する。
sleep 60 &
[1] 7333
7333はプロセスIDを指す。 端末上では他のプログラムの実行を受け付ける状態になっている。
この方法で実行したプロセスは、ログアウトなど端末の接続が切れたタイミングでkillされる。
ログアウトしてもバックグラウンド実行を続けたい場合は、nohupコマンドを使う nohupコマンドで実行した場合は、HUPシグナルを無視する。
nohup sleep 5 &
rc.localなどで起動時に無限ループなどで永続するプログラムを実行する場合も、& を付けてバックグラウンドで実行する。 フォアグラウンドで実行すると起動シーケンスで止まったままになってしまうので注意。
Search
Recent Posts
- カーネル更新やパッケージのパッチ適用後、OSの再起動が必要か確認するLinuxコマンド(needs-restarting)
- OpenSSHのエラー「bad ownership or modes for chroot directory component」の原因と解消方法
- Apacheの起動状態をチェックして停止してる場合にApacheを起動するシェルスクリプト
- Amazon LinuxのOSバージョンを調べる方法|/etc/redhat-release の代替ファイル
- MYSQLでダンプファイルを取得する際に発生したエラー「Couldn't execute 'SELECT BINLOG_GTID_POS('', '0')': You are not using binary logging (1381)」の原因と対処方法