Linux三大文字處理工具之awk

2022-06-21 09:36:12 字數 688 閱讀 5917

awk也是乙個很強大的文字處理工具,與grep, sed 一起稱為linux文字處理的「三板斧」。

如圖,awk是逐行處理文字,將一行內容按照指定分隔符將行分割為多個字段,其中分割完後第乙個欄位為:$1,第二個為$2$0表示當前處理的整行。

除此之外,awk還有一些特殊的內建變數:

awk [option] 'partten1 ; partten2 '

匹配條件和動作 ['partten1 ']

partten表示匹配的條件,action 表示對符合條件的內容進行的操作,常用動作有printf,用於格式化輸出。

注意:常用引數 [option]

(1) 無匹配條件

每行按空格分割,輸出第1列和第3列

每行按逗號分割,輸出第1列和第3列

加上變數的格式化輸出

(2) 有匹配條件

指定分隔符,且輸出第3列<10的第一列和第三列字段,並用空格隔開。

帶有計算的命令

帶有begin和end兩種模式的

begin 表示指定處理文字之前需要執行的操作。

end 表示指定處理本文之後需要指定的操作。

比如,在列印某個檔案前先列印'aaa,bbb'

Linux三大文字處理工具之sed命令

sed是一款流編輯工具,用來對文字進行過濾與替換操作,sed通過一次僅讀取一行內容來對某些指令進行處理後輸出,所以sed更適合於處理大資料檔案。首先,sed通過檔案或管道讀取檔案內容,但sed預設並不直接修改原始檔,而是將讀入的內容複製到緩衝區中,我們稱之為模式空間 pattern space 所有...

Linux文字處理工具

linux中熟練的使用文字處理工具非常的重要,因為linux在設計的時候是採用一切皆檔案的哲學的,甚至連計算機中的配置也都使用偽檔案系統來表示,要查詢裡面的內容就是對檔案進行操作,所以學會使用檔案處理工具事半功倍。而在一切皆物件的windows中,因為物件封裝了所有的操作,包括顯示標準輸出的結果,使...

Linux 文字處理工具

tail f 執行tail f或tail f命令可以觀察檔案正在變化的內容 即跟蹤檔案的變化內容 檔案產生新內容時螢幕會顯示新增內容。seq n sort r head n 1 sort r命令能隨機排序。diff u file 1 file 2 file diff patch d file 1 f...