Bashの「termerated xxx」情報の表示を抑制します。

Bashの「termerated xxx」情報の表示を抑制します。

たとえば、バックグラウンドプロセスを終了した後にbash weil displayを実行した場合、 terminated xxxこのメッセージをどのように無効にしますか?

$ ping g.cn >/dev/null &
[1] 25123
$ pkill ping
[1]  + 25123 terminated  ping g.cn > /dev/null

答え1

サブシェルでコマンドを実行します。

( ping g.cn >/dev/null & )

変える

ping g.cn >/dev/null &

これにより、プロセスを終了したときにプロセス終了メッセージが表示されなくなります。

答え2

disownバックグラウンドタスクを実行できます。

$ ping g.cn > /dev/null &
[1] 25123
$ disown %1
$ kill 25123
$ ps ax | grep '[2]5123'
$

これにより、実行中のシェルからプロセスが切り離されます。これにより、ジョブをフォアグラウンドに戻すことはできません。

関連情報