Awk命令简单使用

  1.  命令解析:1
      
 命令:  awk  -F ':'{print "filename:" FILENAME ",linenumber:" NR ",columns:" NF ",linecontent:"$0}' /etc/passwd  |head -n 100
 1>. -F ‘:’   指定使用“:”分割文件中的每一行,默认使用空格分隔
 2>. '{print "filename:" FILENAME ",linenumber:" NR ",columns:" NF ",linecontent:"$0}
        print:  输入匹配到的信息,固定参数如下:
        ARGC               命令行参数个数 
        ARGV               命令行参数排列 
        ENVIRON            支持队列中系统环境变量的使用 
        FILENAME           awk浏览的文件名 
        FNR                浏览文件的记录数 
        FS                 设置输入域分隔符,等价于命令行 -F选项 
        NF                 浏览记录的域的个数 
        NR                 已读的记录数 
        OFS                输出域分隔符 
        ORS                输出记录分隔符 
        RS                 控制记录分隔符
 3>. $0:  表示打印出获取到的整行内容,$1表示打印分割后的第一个,$n表示打印分割后的第n个  
 4>. head -n 100:  输出查询到的前100行数据
 
 
  1.  命令解析:2      
 命令:  awk '{print $1} filename | sort | uniq -c | sort -nr -k1 | head -n 100
    1>.  统计文件中,ip访问次数最多的100个
    2>.  sort:对IP部分进行排序。
    3>.  uniq -c:打印每一重复行出现的次数。(并去掉重复行)
    4>.  sort -nr -k1:按照重复行出现的次序倒序排列,-k1以第一列为标准排序。
         5>.     head -n 10:取排在前5位的IP 。  
 
 
 
 
posted @ 2017-01-19 12:14  yg-w  阅读(333)  评论(0)    收藏  举报