$ hoge
終わるまでに1分待ったのに終わらない、でもログアウトして帰宅したい。そんな時は、C-zで一時停止して、psとかjobsで一時停止したプロセスのPIDかジョブ番号を調べる。これを引数にしてdisownを走らせる。
$ jobs $ disown %1
これで心おきなく帰宅できる。ログアウトしてもプロセスは死なず、プログラムhogeが完走するまでプロセスは生きつづける。
hogeが時間のかかるプログラムだということが判ったので、次に計算させるときはあらかじめログアウト後もプロセスを生かしておきたい。そんなばあいはnohupをつけてhogeを起動。
$ nohup hoge
いつも使うときはnohup nice -n 19 hogeのようにして使うことが多い。niceはnice値を高くして優先順位を低くする(+10する)コマンドだが、これをdisownでも使うにはどうすればいいのだろう。
Xを使うけどXを対話的に使わないプログラムの場合はnohupしたくなる。たとえば、出力デバイスをX経由のpngデバイスにする場合とか。そんな場合はxvfbをつかう。これでよし。
$ xvfb-run nohup nice -n 19 R --vanilla < hoge.R &