awk 学习总结


FS   设置分隔符,等同于-F
NF   代表字段数
$NF  代表最后一个字段数
NR   代表当前处理第几行

NF 最后一个字段数是什么意思??? 按照输出结果 好像是最后一列有多少个字符

netstat -ntl|awk '{print $4}'
//输出第四列

netstat -ntl| awk 'NR==5'
//NR==5 定位到第5行

netstat -ntl|awk 'NR==5 {print $1}'
//定位到第5行输出第一列


netstat -ntl|awk 'END {print $0}'
//定位到最后一行

netstat -ntl |awk 'NR==5 {print $0}' |awk -F: '{print $1}'
//NR==5 定位到第5行
//print  $0 输出整行数据
   //awk    进一步筛选
      //-F:   是以:为分割符
      //print $1 是输出分割后的第一个
netstat -ntl|awk 'END{print $0}'|awk -F: '{print $1}'
//同上 只是定位到了组后一行

netstat -ntl|awk 'NR==5 {print NF}'
//NR==5 定位到第5行
//print NF 输出多少个字段数

netstat -ntl|grep [8984]|awk '{print $2}'
//查找带有8984的 然后输出第2列


netstat -ntl|awk -F: '{a=$NF} END {print a}'
//赋值 打印最后一行的最后一段  和 netstat -ntl|awk -F: 'END{print $NF}' 相同

netstat -ntl|awk -F: '{a=$NF} {print a}' //打印最后一段


netstat -ntl|awk 'BEGIN {a=0}{a=a+NF}{print a}' 
//赋值累加 逐个累加值输出
netstat -ntl|awk 'BEGIN {a=0}{a=a+NF} END {print a}'
//输出最后的和 END 为结束计算 然后再打印

netstat -ntl |awk 'BEGIN {a=0} {if(NF>=8) a=a+1} END {print a}'
//同上

echo |awk '{print "total sum"} {print "\t"} {print "2 3"}'

//下面这个是调用文件
vim a.txt  //建立文件
BEGIN { for(a=0;a<=10;a++) {print a} } //文件里面的内容

awk -f a.txt //直接执行

 等同 echo |awk 'BEGIN {for (a=0;a<=10;a++){print a}}'


ps -ef|grep java |awk '{print "进程号\t"} {print $1}'


df -h |awk '{print $5}' |awk -F% 'BEGIN {if($1>50) {print $}}'
 
df -h| awk '{print $5$1}'|awk -F% '{a=0} {a=$1}{ if(a>50) print $1}' |sort

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值