Linux awk命令詳解及使用方法

2021-10-08 07:29:09 字數 1737 閱讀 4535

awk(針對列)

1.語法格式:awk [選項] 『[條件]』 檔名

處理文字時,若未指定分隔符,則預設將空格、製表符等作為分隔符。

1)指定空格為分隔符

指令:print

# awk 『』 a.txt

2)指定冒號:為分隔符

選項:-f:指定分隔符

3)指定/為分隔符,將分為五部分,提取bin為第三列

/usr/bin/echo/bash

[root@zhang ~]# awk -f / 『』 a.txt

[root@zhang ~]# free | awk 『/mem/』//先定位到行,再提取要列印的列

2.awk常用內建變數:

$0:文字當前行的全部內容

$1:文字的第一列

$2:文字的第二列

$3:文字的第三列,以此類推

nr:檔案當前行的行號

nf: 檔案當前行的列數(有幾列)

注:awk的print指令不僅可以列印變數,也可以列印常量,如下:

提取根分割槽的剩餘容量

3.awk處理的時機

awk會逐行處理文字,支援在處理第一行之前做一些準備工作,以及在處理完最後一行之後做一些總結性質的工作。

語法格式:awk [選項] 『beginend』 檔名

先執行預處理begin再讀中間的指令最後執行end

[root@zhang ~]# awk 『begin/bash$/end』 /etc/passwd如果沒有end,則符合條件就輸出乙個值,直到結束

[root@zhang ~]# awk 『begin/bash$/』 /etc/passwd如果既沒有begin又沒有end則該命令只執行x++,滿足條件輸出6個1

[root@zhang ~]# awk 『/bash$/』 /etc/passwd

如下:

# awk -f : 『begin end』 /etc/passwd

注:用"\t"表示tab製表位

Linux awk命令詳解

3.awk的執行過程 1 awk script的組成 awk script可以由一條或多條awk cmd組成,兩條awk cmd之間一般以newline分隔 awk cmd由兩部分組成 awk pattern awk script可以被分成多行書寫,必須確保整個awk script被單引號括起來。2...

linux awk命令詳解

awk 儘管操作可能會很複雜,但語法總是這樣,其中 pattern 表示 awk 在資料中查詢的內容,而 action 是在找到匹配內容時所執行的一系列命令。花括號 不需要在程式中始終出現,但它們用於根據特定的模式對一系列指令進行分組。pattern就是要表示的正規表示式,用斜槓括起來。awk 語言...

linux awk命令詳解

awk是乙個強大的文字分析工具,相對於grep的查詢,sed的編輯,awk在其對資料分析並生成報告時,顯得尤為強大。簡單來說awk就是把檔案逐行的讀入,以空格為預設分隔符將每行切片,切開的部分再進行各種分析處理。awk有3個不同版本 awk nawk和gawk,未作特別說明,一般指gawk,gawk...