在 Linux 中抑制 hping 的输出

在 Linux 中抑制 hping 的输出

我希望通过 bash 脚本抑制 hping3 的所有输出到 stdout(控制台),但我尝试的所有方法都会导致统计信息仍然显示,即使单个 ping 结果被抑制。

我尝试过不同的方式重定向,命令行开关‘-q’,但没有任何作用。

有想法吗?

hping3 10.1.1.1 -c 1 -q > \dev\null
hping3 10.1.1.1 -c 1 -q > logfile.txt
hping3 10.1.1.1 -c 1 -q 1>\dev\null

所有结果都会在控制台中显示以下内容:

--- 10.1.1.1 hping statistic ---
1 packets transmitted, 1 packets received, 0% packet loss
round-trip min/avg/max = 1.1/1.1/1.1 ms

答案1

正如@mark-wagner所说,正确的语法是

hping3 10.1.1.1 -c 1 -q >/dev/null 2>&1

这会将标准输出重定向到名为的位桶文件/dev/null,然后将标准错误重定向到同一位置。

如果这还不够(例如,输出不在标准错误或标准输出上),那么您可以这样做:

( hping3 10.1.1.1 -c 1 -q ) >/dev/null

我认为,无论输出指向何处,这都应该有效。

相关内容