码迷,mamicode.com
首页 > 其他好文 > 详细

awk用法(三)

时间:2017-03-23 15:14:52      阅读:131      评论:0      收藏:0      [点我收藏+]

标签:linux   awk   分隔符   

awk用法(三)

  • 知识点一:

NR行数,NF段数

1、#awk -F ‘:‘ ‘NR==10‘ 1.txt 【行数是第10行的】

2、#awk -F ‘:‘ ‘NR==10 {print $1,$7}‘ 1.txt  【只打印出第10行中的第1段和第七段】

3、#awk -F ‘:‘ ‘{if(NR==10) print $1,$7}‘ 1.txt

  #awk -F ‘:‘ ‘OFS="#" {if(NR==10) print $1,$7}‘ 1.txt

以上三点截图如下:

技术分享

4、#awk -F ‘:‘ ‘{print NF}‘ 1.txt

截图如下:

技术分享

注意:上条命令的行数等于文档1.txt的行数,截图如下:

技术分享

  #awk -F ‘:‘ ‘{print NR}‘ 1.txt

截图如下:

技术分享

  #awk -F ‘:‘ ‘{print $NR}‘ 1.txt

截图如下:

技术分享

  #awk -F ‘:‘ ‘{print $NF}‘ 1.txt == awk -F:‘{print $7}‘ 1.txt

 5、awk -F ‘:‘ ‘{if(NF==7) print $1}‘ 1.txt

内置变量一共介绍了3种,OFS,NF,NR

  • 知识点二:数学运算

1、#awk -F ‘:‘ ‘$7=$3+$4‘ 1.txt  【给第七段赋值为第三段加第四段的值】

注意:当显示的文档发生改变时,默认以空格为分隔符!

指定分隔符格式:

  #awk -F ‘:‘ ‘OFS=":" {$7=$3+$4;print $0}‘ 1.txt

2、#awk -F ‘:‘ ‘{sum=sum+$3}; END {print sum}‘ 1.txt

  #awk -F ‘:‘ ‘{(sum=sum+$3)}; END {print sum}‘ 1.txt

  两式结果相同,都是计算第三段数值相加的总和,上述命令是循环计算!



本文出自 “圣骑士控魔之手” 博客,请务必保留此出处http://wutengfei.blog.51cto.com/10942117/1909497

awk用法(三)

标签:linux   awk   分隔符   

原文地址:http://wutengfei.blog.51cto.com/10942117/1909497

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!