※この記事は多数誤りを含むので参考リンクのみ参考にしてください。 本文 $cmdにエスケープが必要な文字だったり意図しない半角スペースが含まれてる場合は注意。 sh -c "nohup $cmd >/dev/null 2>&1 &" ただnohup使うってだけの話じゃなくて、 このスクリプトの下の方(アバウト)で 裏でディレクトリを消すプロセスを起動しながら watchコマンドでディレクトリを表示してどこまで消えたか見せるみたいなスクリプト作ってて必要になった。 普通にnohupコマンドとwatchコマンドのプロセスを同じプロセスグループ内で動かすと watchコマンドを終了する際のSIGINT(Ctrl-C)がnohupコマンドのプロセスにも送られて死ぬ。 nohupコマンドがトラップ&無視してくれるのはSIGHUPのみなので、 それ以外のSIGINT等のシグナルはトラップされない。 の