我們知道,將幾個命令通過管道符組合在一起就形成一個管道。通常,通過這種方式使用的命令就被稱為過濾器。過濾器會獲取輸入,通過某種方式修改其內容,然后將其輸出。
簡單地稅,過濾器可以概括為以下兩點:
- 如果一個 Linux 命令是從標準輸入接收它的輸入數據,并在標準輸出上產生它的輸出數據(結果),那么這個命令就被稱為過濾器
- 過濾器通常與 Linux 管道一起使用
常用的被作為過濾器使用的命令如下所示:
- awk —— 用于文本處理的解釋性程序設計語言,通常被作為數據提取和報告的工具。
- cut —— 用于將每個輸入文件(如果沒有指定文件則為標準輸入)的每行的指定部分輸出到標準輸出。
- grep —— 用于搜索一個或多個文件中匹配指定模式的行。
- tar —— 用于歸檔文件的應用程序。
- head —— 用于讀取文件的開頭部分(默認是 10 行)。如果沒有指定文件,則從標準輸入讀取。
- paste —— 用于合并文件的行。
- sed —— 用于過濾和轉換文本的流編輯器。
- sort —— 用于對文本文件的行進行排序。
- split —— 用于將文件分割成塊。
- strings —— 用于打印文件中可打印的字符串。
- tac —— 與 cat 命令的功能相反,用于倒序地顯示文件或連接文件。
- tail —— 用于顯示文件的結尾部分。
- tee —— 用于從標準輸入讀取內容并寫入到標準輸出和文件。
- tr —— 用于轉換或刪除字符。
- uniq —— 用于報告或忽略重復的行。
- wc —— 用于打印文件中的總行數、單詞數或字節數。
本文參考自 《Linux Shell命令行及腳本編程實例詳解 》