我有一个Bash脚本,运行带有参数的程序。该程序输出一些状态(做这个,做那个…)这个程序没有任何安静的选项。如何防止脚本显示任何内容?
我正在寻找类似Windows的“回音关闭”。
我有一个Bash脚本,运行带有参数的程序。该程序输出一些状态(做这个,做那个…)这个程序没有任何安静的选项。如何防止脚本显示任何内容?
我正在寻找类似Windows的“回音关闭”。
当前回答
类似的
script > /dev/null 2>&1
这将防止标准输出和错误输出,将它们重定向到/dev/null.
其他回答
在你的脚本中,你可以将以下内容添加到你知道要输出的行中:
some_code 2>>/dev/null
或者你也可以试试
some_code >>/dev/null
下面将标准输出发送到空设备(位桶)。
scriptname >/dev/null
如果你也想在那里发送错误消息,使用其中之一(第一个可能在所有shell中都不起作用):
scriptname &>/dev/null
scriptname >/dev/null 2>&1
scriptname >/dev/null 2>/dev/null
并且,如果你想记录消息,但不看到它们,用一个实际的文件替换/dev/null,例如:
scriptname &>scriptname.out
为了完整起见,在Windows cmd.exe(其中“nul”相当于“/dev/null”)下,它是:
scriptname >nul 2>nul
类似的
script > /dev/null 2>&1
这将防止标准输出和错误输出,将它们重定向到/dev/null.
Try
: $(yourcommand)
:是do nothing的缩写。
$()只是您的命令。
这是另一种选择
scriptname |& :