Shell

如何過濾掉文本文件中出現的命令輸出行?

  • April 14, 2021

假設我們有一個禁止行的文本文件forbidden.txt。過濾文本文件中存在的命令輸出的所有行的簡短方法是什麼?

cat input.txt | exclude-forbidden-lines forbidden.txt | sort

像這樣使用grep

$ grep -v -x -F -f forbidden.txt input.txt

那長長的選項列表grep意味著

  • -v反轉匹配的意義,即尋找匹配的行。
  • -x匹配模式時,要求模式匹配整行,即不只是行上的任何位置。
  • -F匹配模式時,將其視為固定字元串,即不視為正則表達式。
  • -f``forbidden.txt從給定文件 ( ) 中讀取模式。

然後將它傳送到sort或任何你想用它做的事情。

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