すべてを

▼開く

閉じる▲

ログアウトしてもコマンドを終了させずに実行を継続する

○findコマンドでの検索をログアウトしても中断せずに実行し完了させる

nohupコマンドで検索を実行する
$ nohup find . -type d -empty -print > emp_dir &
[1] 1570

nohupコマンドで、実行させるコマンド「find . -type d -empty -print > emp_dir」を指定し、バックグラウンドで実行する「&」を付けて実行すると、コマンドがバックグラウンドで実行されて、ユーザがログアウトしても実行されているコマンドにハングアップシグナルが送られずにコマンドが最後まで実行される。

ただし、マシンがシャットダウンされれば実行が止まり、再起動してもそのコマンドが続けて実行されることはない。

標準出力と標準エラー出力は `nohup.out' へ追加書き込みモードでリダイレクトされる。

コマンド実行を途中で中止する場合は、killコマンドでプロセスを終了させる。プロセス番号は、コマンド実行時に表示される。この例の場合は「1570」がプロセス番号である。

実行した「find . -type d -empty -print > emp_dir」の意味

findコマンドで、カレントディレクトリ「.」にあるディレクトリのうちで空のディレクトリを検索し、表示する。その結果をファイル「emp_dir」に出力する。