awk指令使用

1.正常使用

awk -F ":" '{print $1}'  a.txt
Cat a.txt |awk '/inet/ {split($2,x,":");print x[2]}'    #获取有inet的行 用:对第2个字符分割放入x数组中
awk '{gsub(/ /,"")1}' a.txt   #去掉空格
awk '{gsub(/\$/,"");gsub(/,/,"");cost+=$4;}END{print "The sum is $"cost > "filename"}' awk_file
#去掉$和,符号,计算第四列的和
 #NR 行号  NF 字段数  都是数值
awk '/python/ {print NR ,$NF,  $1}' human.txt

awk '/python/&&$2>18 {printf("hang %i,name is %s,age is %i \n",NR,$1,$2)}' human.txt  #$0是整条记录

2.awk处理两个文件内容,进行合并为一个文件

https://blog.csdn.net/imzoer/article/details/8734474


NR和FNR:NR在对多个文件操作时一直增加,FNR在操作新文件时重新置0计数,若要将两个文件内容合并为一个文件:

awk 'NR=FNR{a[NR]=$0}'  a.txt   #将a文件的每一行放入a的数据
awk 'NR>FNR{print $0}' a.txt b.txt  #当到b文件时才开始输出b文件的每一行内容
两个结合:
awk 'NR=FNR{a[NR]=$0,nr=NR}NR>FNR{print a[NR-nr],$0}' a.txt b.txt  #处理a文件时存放数据,处理b文件时输出数组a的数据同时和b文件的数据  一一对应,nr最终是a文件的行数,也就是一个周期
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值