加入收藏 | 设为首页 | 会员中心 | 我要投稿 南通站长网 (https://www.0513zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

AWK运算符详解

发布时间:2021-11-23 17:50:29 所属栏目:教程 来源:互联网
导读:一、AWK运算符介绍 运算符 描述 赋值运算符 = += -= *= /= %= ^= **= 赋值语句 逻辑运算符 || 逻辑或 逻辑与 正则运算符 ~ ~! 匹配正则表达式和不匹配正则表达式 关系运算符 = = != == 关系运算符 算术运算符 + - 加,减 * / 乘,除与求余 + - ! 一元加,减

一、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";}}'
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";}'
ok
 
in运算符
 
[gaoming@localhost ~]$ awk 'BEGIN{a="b";arr[0]="b";arr[1]="c";print (a in arr);}'
0
 
[gaoming@localhost ~]$ awk 'BEGIN{a="b";arr[0]="b";arr["b"]="c";print (a in arr);}'
1
 
in运算符,判断数组中是否存在该键值。

(编辑:南通站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读