awk笔记
1.awk 算术运算符:
说明:所有用作算术运算符进行操作,操作数自动转为数值,所有非数值都变为0。
字符串转换为数字
"100"转换成100
"100abc"转换成100
"abc100"转换成0
"b" 转换成0
[root@Gin scripts]# awk 'BEGIN{a="b";print a++,++a}'
0 2
[root@Gin scripts]# awk 'BEGIN{a="20b4";print a++,++a}'
20 22
这里的a++ , ++a与javascript语言一样:a++是先赋值加++;++a是先++再赋值,
a++的时候,awk 会自动把a 当作数字计算, 如果是非数字,作为 0, 那么 print a++ 的时候,输出 0, 这时a 已经等于1了,轮到下一句, ++a, 先计算, a就等于2 , 所以输出 2。
-
RS=""表示以空行作为记录分隔符
-
数组
在awk中,对于未初始化的数组变量,在进行数值运算的时候,会赋予初值0,因此a[$3]=0
浙公网安备 33010602011771号