歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux基礎 >> 關於Linux

awk 運算符(算術運算符,賦值運算符,關系運算符,邏輯運算符,

awk作為文本處理優秀工具之一,它有獨自豐富的運算符。下面我們一起歸納總結一下,所有運算符。 可以分為:算術運算符,賦值運算符,關系運算符,邏輯預算法,正則運算符。

 

一、運算符介紹

運算符 描述 賦值運算符 = += -= *= /= %= ^= **= 賦值語句 邏輯運算符 || 邏輯或 && 邏輯與 正則運算符 ~ ~! 匹配正則表達式和不匹配正則表達式 關系運算符 < <= > >= != == 關系運算符 算術運算符 + - 加,減 * / & 乘,除與求余 + - ! 一元加,減和邏輯非 ^ *** 求冪 ++ -- 增加或減少,作為前綴或後綴 其它運算符 $ 字段引用 空格 字符串連接符 ?: C條件表達式 in 數組中是否存在某鍵值

 

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

二、實例介紹

  • awk賦值運算符

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

  • awk邏輯運算符

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

  • awk正則運算符

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

  • awk關系運算符

如:> < 可以作為字符串比較,也可以用作數值比較,關鍵看操作數如果是字符串 就會轉換為字符串比較。兩個都為數字 才轉為數值比較。字符串比較:按照ascii碼順序比較。

[chengmo@localhost ~]$ awk 'BEGIN{a="11";if(a >= 9){print "ok";}}'

 

[chengmo@localhost ~]$ awk 'BEGIN{a=11;if(a >= 9){print "ok";}}' 
ok

  • awk算術運算符

說明,所有用作算術運算符 進行操作,操作數自動轉為數值,所有非數值都變為0。

[chengmo@localhost ~]$ awk 'BEGIN{a="b";print a++,++a;}'
0 2

  • 其它運算符

?:運算符

[chengmo@localhost ~]$ awk 'BEGIN{a="b";print a=="b"?"ok":"err";}'
ok

 

in運算符

[chengmo@localhost ~]$ awk 'BEGIN{a="b";arr[0]="b";arr[1]="c";print (a in arr);}'
0

 

[chengmo@localhost ~]$ awk 'BEGIN{a="b";arr[0]="b";arr["b"]="c";print (a in arr);}'
1

in運算符,判斷數組中是否存在該鍵值。

Copyright © Linux教程網 All Rights Reserved