1. 程式人生 > >Linux常用基本命令:三劍客命令之-awk模式用法(1)

Linux常用基本命令:三劍客命令之-awk模式用法(1)

AC dot code 再次 end CA awk 運算 什麽

再次回顧一下,awk基本語法格式:

awk [options] ‘Pattern {Action}‘ file1 file2 ···

之前的文章有講過兩種Pattern(BEGIN, END),本文,再次探討其他的pattern(模式)用法。

模式是什麽? 模式是一種匹配條件,滿足條件,就執行後面的動作。

1,沒有任何pattern的用法,稱之為空模式

ghostwu@dev:~/linux/awk$ awk {print} ghostwu.txt 
ghostwu 20 man
zhangsan 22
lisi

2,通過內置變量NF, 打印列等於3的行

ghostwu@dev:~/linux/awk$ cat ghostwu.txt 
ghostwu 20 man
zhangsan 22
lisi
ghostwu@dev:~/linux/awk$ awk NF==3{print} ghostwu.txt 
ghostwu 20 man

3,也可以通過關系運算符,關系運算符,跟大多數編程語言類似:

ghostwu@dev:~/linux/awk$ cat ghostwu.txt 
ghostwu 20 man
zhangsan 22
lisi
ghostwu@dev:~/linux/awk$ awk $1=="ghostwu"{print}
ghostwu.txt ghostwu 20 man ghostwu@dev:~/linux/awk$ awk NF>1"{print}" ghostwu.txt ghostwu 20 man zhangsan 22

4,之前介紹的BEGIN, END模式

ghostwu@dev:~/linux/awk$ awk BEGIN{print "姓名", "年齡", "性別"} {print $1, $2, $3} END{print "包青天", 200, "man"} ghostwu.txt 
姓名 年齡 性別
ghostwu 20 man
zhangsan 22 
lisi  
包青天 
200 man

Linux常用基本命令:三劍客命令之-awk模式用法(1)