zoukankan      html  css  js  c++  java
  • awk的+=用法

    awk增加统计列值
    为增加列数或进行运行结果统计,使用符号 + =。增加的结果赋给符号左边变量值,增加
    到变量的域在符号右边。例如将 $ 1加入变量total,表达式为toatl+=$1。列值增加很有用。许
    多文件都要求统计总数,但输出其统计结果十分繁琐。在awk中这很简单,请看下面的例子。
    将所有学生的‘目前级别分’加在一起,方法是tot+=$6,tot即为awk浏览的整个文件的
    域6结果总和。所有记录读完后,在END部分加入一些提示信息及域 6总和。不必在awk中显
    示说明打印所有记录,每一个操作匹配时,这是缺省动作。
    如果文件很大,你只想打印结果部分而不是所有记录,在语句的外面加上圆括号()即
    可。

    [root@localhost.localdomain 三 6月 14 10:17:24 home]#cat grade.txt 
    M.Tansley	05/99 48311	Green 8 40 44
    Lulu 06/99 48317	green 8 24 26
    P.Bunny 02/99 48 Yellow 12 35 28
    J.Troll 07/99 4842	Brown-3 12 26 26
    L.Tansley 07/99 4712 Brown-2	12 30 28
    

      


    awk '(tot+=$6);END{print "Club student total points : " tot"}' grade.txt

    [root@localhost.localdomain 三 6月 14 09:48:37 home]#awk '(tot+=$6);END{print "Club student total points : " tot}' grade.txt
    M.Tansley 05/99 48311 Green 8 40 44
    Lulu 06/99 48317	green 8 24 26
    P.Bunny 02/99 48 Yellow 12 35 28
    J.Troll 07/99 4842	Brown-3 12 26 26
    L.Tansley 07/99 4712 Brown-2	12 30 28
    Club student total points : 155
    

      

     统计某目录下文件大小

    [root@localhost.localdomain 三 6月 14 10:12:50 src]#ls -l
    drwxr-xr-x 15 root root 4096 6月 5 16:49 nagios-plugins-2.1.1
    -rw-r--r-- 1 root root 2677352 6月 5 16:37 nagios-plugins-2.1.1.tar.gz
    -rw-r--r-- 1 root root 405725 6月 5 16:37 nrpe-2.12.tar.gz
    
    ls -l | awk '/^[^d]/ {print $9 "	"$5} {tot+=$5} END{print "total KB:"tot}'
    
    [root@localhost.localdomain 三 6月 14 10:12:50 src]#ls -l | awk '/^[^d]/ {print $9 "	"$5} {tot+=$5} END{print "total KB:"tot}'
    
    nagios-plugins-2.1.1.tar.gz	2677352
    nrpe-2.12.tar.gz	405725
    zabbix-release-3.2-1.el7.noarch.rpm	13392
    total KB:3104661
    

      

  • 相关阅读:
    JavaScript实现常见排序算法
    执行环境与作用域
    几种常见的三列布局,中间自适应,两边定宽
    常见的两列布局
    CodeAtlas For Sublime Text
    增加调用路径查找
    增加调用被调用个数隐喻
    sublime 插件
    分析大工程
    Jmeter 分布式测试
  • 原文地址:https://www.cnblogs.com/irockcode/p/7007805.html
Copyright © 2011-2022 走看看