Grep
greping 文件問題
我一直在使用 grep 執行一些 PII 掃描,雖然它正在尋找結果,但它確實發現了太多誤報。
有沒有一種方法可以告訴 grep 不要觸發文件匹配,除非它包含其他數據?
例如,我可以告訴它不要在 SSN 的正則表達式上觸發警報,除非文件在文件的其他位置包含諸如“ssn”或“社會安全號碼”之類的文本?
grep -lZ ssn files_to_search | xargs -0 grep what_to_search_for
當然,只需將第一個輸出通過管道傳輸到另一個 grep。Grep for foo 然後 grep for bar,所以你的輸出只會是同時具有 foo和bar 的行。
grep SSN filename.txt | grep -e "ssn|social security number"
這只會命中大寫的 SSN,然後通過任何帶有 sss 或社會安全號碼的行。小寫。在任何情況下添加 -i 。如果你真的想要 SSN 和 ssn 試試這個;
grep -i SSN filename.txt | grep social.security.number
我喜歡的另一個是只顯示沒有條的行。對 foo 執行 Grep 然後 grep -v bar。只有帶有 foo 的行,也沒有bar。在Windows中使用 GNU grep 2.5.4