awk简介
- 具体基本用法:
awk '$3>0{print $1,$2*$3}' emp.data
awk与sed一样,都是每一次读取一行,对一行进行处理后,继续进行下一行的处理
$3表示一行中的第3列,其余同理
$3>0 被称为模式,{}中的指令被称为动作
每一行中如果存在符合模式的数据,那么就执行动作
awk '$3>0{print $1,$2*$3}$3==0{print $1,'no work'}' emp.data
如上可以多个模式动作一起写
如果要将命令写进文件中,则如上
同时我们可以省略动作,print是默认的动作,他会打印整行
我们也可以省略模式,即默认没有什么约束条件
字段与内置变量,输出和选择
awk '{print NR","$0}' emp.data
我们之前直接用,则行中各列默认是以空格分隔的,现在用“,”,则相当于将NR与$0之间以“,”拼接一样,则是以,为分隔的
还有更好的用的方法是:
awk '{printf("%d,$s\n",NR,$0)}' emp.data
我们可以用c语言中的printf继续输出,但需要注意的是printf是不默认输出\n的,需要手动添加
上面两种写法是等价的
标签:printf,print,awk,emp,Linux,JXNUSixWeek,data,三剑客 From: https://www.cnblogs.com/cilinmengye/p/17741991.html我们甚至可以使用c中的运算符