欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

[Linux] awk基础编程

程序员文章站 2022-06-10 17:16:58
1.awk每次读一行数据,如果设置了-F选项,是在这一行使用分隔符分,$0是全部 2.awk由模式和动作组成 3.条件判断模式{动作} 4./正则模式/{动作} 可以有多个模式动作 5.条件操作符,~匹配正则 !~不匹配 6.特殊的模式(BEGIN,END) , 都只执行一次 , 不像前面的模式 , ......

 

1.awk每次读一行数据,如果设置了-f选项,是在这一行使用分隔符分,$0是全部

2.awk由模式和动作组成

3.条件判断模式{动作}

a.txt
aaa
bbb
aaa
ccc
ddd


cat a.txt |awk '$1=="aaa"{print "=="$1}'

[Linux] awk基础编程

 

4./正则模式/{动作}

[Linux] awk基础编程

 

可以有多个模式动作

[Linux] awk基础编程

 

5.条件操作符,~匹配正则 !~不匹配

 

cat a.txt |awk '{if ($1=="aaa") print $1;else print "==="$1}'

[Linux] awk基础编程

6.特殊的模式(begin,end) , 都只执行一次 , 不像前面的模式 , 每一行都会执行 , 用于初始化和最终结果的打印等

cat a.txt |awk '{arr[$1]+=1}end{for(row in arr){print row" 出现次数 "arr[row]}}'

配合数组统计出现次数

[Linux] awk基础编程