如何杀死进程并且在控制台中看不到输出

时间:2016-02-11 13:11:42

标签: linux bash console

我很有兴趣如何从另一个控制台中杀死某个进程,并且看不到打印输出"被杀#34;在第一个控制台作为输出。我想在最好的情况下将输出重定向到/ dev / null。所以这是一个简单的例子,我要实现的目标:

in first console I type:
sleep 30
in second console:
killall -9 sleep

结果在第一个控制台中我被杀死了#34;我不想看的东西。

2 个答案:

答案 0 :(得分:1)

您需要先杀死shell,因为这是打印消息的过程。

或者您只需在子shell中运行命令并重定向输出:

( sleep 30 ) > /dev/null 2>&1

答案 1 :(得分:0)

寻找最佳答案我找到了这个:

wait命令以这种方式处理kill信号:

kill $!
wait $! 2>/dev/null

因此,结果“已杀死”消息被重定向到/ dev / null或某个指出的文件。