Bash
在 Linux 中抑制 hping 的輸出
我希望從 bash 腳本中抑制從 hping3 到標準輸出(控制台)的所有輸出,但是我嘗試的所有結果仍然顯示統計資訊,即使單個 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
正如@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
無論輸出指向何處,這都應該起作用-我認為。