linux三劍客之awk命令詳解二(awk格式化)

2021-10-02 01:10:28 字數 786 閱讀 7792

前一篇文章中awk命令詳解一,筆者在使用awk時,通常使用print對文字進行輸出,但是動作print只能實現簡單的文字輸出功能,並不能對文字格式進行編輯,若要改變文字的格式,需要使用動作printf,這類似於c語言中的pringf()函式或linux中的printf命令。

借鑑一篇大佬寫的printf命令詳解,先熟悉printf命令。

awk命令中使用printf動作可以對文字進行格式化輸出,printf動作與printf命令用法相似,

先寫乙個簡單的示例:

由上圖命令返回結果可以看到,printf動作預設是不會輸出換行符的,將文字輸出在一行裡。

由上圖可以看到,可以使用"%s\n"格式化輸出來實現。在awk命令中使用printf動作,需要注意的是

1)若需要格式化多個引數,各個引數之間需要使用逗號","分隔開,並且有多少個引數就需要使用多少個格式化替換符,示例如下:

從圖中可以看到,當未根據引數的個數傳入相同的格式替換符時,只會輸出一部分資訊。所以,格式替換符的個數與傳入引數的個數需保持一致。

2)使用printf動作輸出的文字不會換行,若需換行,可在對應的格式替換符後加入「\n」進行轉義換行。

linux 三劍客之 awk

awk是一種程式語言,用於在linux unix下對文字和資料進行處理。資料可以來自標準輸入 stdin 乙個或多個檔案,或其它命令的輸出。它支援使用者自定義函式和動態正規表示式等先進功能,是linux unix下的乙個強大程式設計工具。它在命令列中使用,但更多是作為指令碼來使用。awk有很多內建的...

linux三劍客之awk

linux三劍客 grep sed awk 與sed類似,awk是行處理器 相比較螢幕處理的優點,在處理龐大檔案時不會出現記憶體溢位或是處理緩慢的問題,它可以對每一行進行切片處理 awk處理過程 依次對每一行進行處理,然後輸出 awk命令形式 awk f f v begin end file f f...

三劍客之awk

awk命令的執行過程 滿足 awk從檔案中讀取一行內容到記憶體中 判斷是否滿足條件 滿足 執行對應的命令 輸出到螢幕 不滿足 awk從檔案中讀取一行內容到記憶體中 判斷是否滿足條件 不滿足 繼續讀取檔案裡的內容直到檔案最後awk命令的語法awk 引數 模式 檔案 awk 引數 條件 找誰 檔案 表示...