天天看點

awk 運算符 介紹

一、運算符介紹

運算符

描述

指派運算符

= += -= *= /= %= ^= **=

指派語句

邏輯運算符

||

邏輯或

&&

邏輯與

正則運算符

~ ~!

比對正規表達式和不比對正規表達式

關系運算符

< <= > >= != ==

算術運算符

+ -

加,減

* / &

乘,除與求餘

+ - !

一進制加,減和邏輯非

^ ***

求幂

++ --

增加或減少,作為字首或字尾

其它運算符

$

字段引用

空格

字元串連接配接符

?:

C條件表達式

in

數組中是否存在某鍵值

說明:awk運算符基本與c語言相同。表達式及功能基本相同

二、執行個體介紹

awk指派運算符

a+=5; 等價于:a=a+5; 其它同類

awk邏輯運算符

[gaoming@localhost ~]$ awk 'BEGIN{a=1;b=2;print (a>5 && b<=2),(a>5 || b<=2);}' 0 1

awk正則運算符

[gaoming@localhost ~]$ awk 'BEGIN{a="100testa";if(a ~ /^100*/){print "ok";}}' ok

awk關系運算符

如:> < 可以作為字元串比較,也可以用作數值比較,關鍵看操作數如果是字元串 就會轉換為字元串比較。兩個都為數字 才轉為數值比較。字元串比較:按照ascii碼順序比較。 [gaoming@localhost ~]$ awk 'BEGIN{a="11";if(a >= 9){print "ok";}}' [gaoming@localhost ~]$ awk 'BEGIN{a=11;if(a >= 9){print "ok";}}'

awk算術運算符

說明,所有用作算術運算符 進行操作,操作數自動轉為數值,所有非數值都變為0。 [gaoming@localhost ~]$ awk 'BEGIN{a="b";print a++,++a;}' 0 2
?:運算符 [gaoming@localhost ~]$ awk 'BEGIN{a="b";print a=="b"?"ok":"err";}' in運算符 [gaoming@localhost ~]$ awk 'BEGIN{a="b";arr[0]="b";arr[1]="c";print (a in arr);}' [gaoming@localhost ~]$ awk 'BEGIN{a="b";arr[0]="b";arr["b"]="c";print (a in arr);}' 1 in運算符,判斷數組中是否存在該鍵值。