Grep

grep 的意外輸出

  • September 11, 2016

我正在使用pyrit。對於那些不知道的人,pyrit 允許檢查 wpa 握手密鑰是否有效:

pyrit -r file0.cap analyze 

當文件不包含有效密鑰時,輸出如下:

Parsing file 'file0.cap' (1/1)...
AccessPoint e0:xx:xx:xx:xx:xx ('AP_name0'):
No valid EAOPL-handshake + ESSID detected.

現在我只是想知道為什麼發出時:

pyrit -r file0.cap analyze | grep good 

它總是給我(當沒有有效的握手鍵時):

No valid EAOPL-handshake + ESSID detected.

當有有效密鑰時,它可以工作;我們有以下輸出:

HMAC_SHA1_AES, good, spread 1

我想是因為這條線

No valid EAOPL-handshake + ESSID detected.

可能是命令的標準錯誤pyrit,而不是標準輸出。通常,|將標準輸出到下一個命令,標準錯誤會立即寫入終端。相反,如果您想通過管道傳遞標準錯誤和輸出,那麼您可以使用|&. IE

pyrit -r file0.cap analyze |& grep good 

引用自:https://unix.stackexchange.com/questions/150215