如何抑制输出无限运行的多个命令的输出?

时间:2017-07-18 23:51:31

标签: linux

假设我有两个在Linux中运行的命令:cmd1,cmd2和cmd3。 cmd1和cmd2各自在控制台日志中提供永远运行的输出,除非您手动执行它。

通常情况下,我会使用多个终端,但是我在一台必须在后台运行的虚拟机上运行它们。

我尝试成功运行以下内容:

# nohup cmd1 > /dev/null 2>&1&
[1] pid1

但是如果我运行下一个命令:

# nohup cmd2 > /dev/null 2>&1&
[2] pid2
[1]   Exit 1                 nohup cmd1 > /dev/null 2>&1

该进程因cmd1而被终止。然后是cmd2:

[2]+  Exit 1                 nohup cmd2 > /dev/null 2>&1

有没有办法可以将两个命令的输出重定向到/ dev / null?

也许是一种复制/ dev / null然后将每个命令输出抑制到每个/ dev / null的方法?重要的是我可以在cmd1和cmd2之后运行cmd3。

2 个答案:

答案 0 :(得分:0)

同时使用相同的/ dev / null运行多个命令非常好。 也许你的cmd1和cmd2程序有一些不能相互容忍的依赖。最好再次检查它们 我已经在bash shell中测试了

See the attachment

答案 1 :(得分:0)

我发现了这个问题。显然这些命令进程因cmd1和cmd2缺少配置而终止;缺少该配置会终止这两个命令。

董先生是正确的。您可以同时在/ dev / null上运行多个命令。