zoukankan      html  css  js  c++  java
  • awk 表达式

    awk动作表达式中的算数运算符

    awk动作表达式中的算数运算符

    案例演示

    使用awk计算/etc/services中的空白行数

    awk 'BEGIN{sum=0}/^$/{++sum}END{print sum}' /etc/services
    

    计算学生课程分数平均值,学生课程文件内容如下

    student.txt

    Allen    80    90    96    98
    Mike    93    98    92    91
    Zhang    78    76    87    92
    Jerry    86    89    68    92
    Han    85    95    75    90
    Li    78    88    98    100
    

      

    awk 'BEGIN{printf "%-20s%-20s%-20s%-20s%-20s%-20s
    ","Name","Chinese","English","Math","Physical","Average"}{sum=$2+$3+$4+$5;avg=sum/4}{printf "%-20s%-20d%-20d%-20d%-20d%-0.2f
    ",$1,$2,$3,$4,$5,avg}' student.txt
    

    awk 'BEGIN{num1=20;num2+=num1;print num1,num2}'
    

    awk 'BEGIN{num1=20;num2=30;print num1+num2}'
    

    awk 'BEGIN{num1=20;num2=30;print num1-num2}'
    

    awk 'BEGIN{num1=20;num2=30;print num1*num2}'
    

    awk 'BEGIN{num1=20;num2=30;print num1/num2}'
    

    保留小数后两位

    awk 'BEGIN{num1=20;num2=30;printf "%0.2f
    ",num1/num2}'
    

    awk 'BEGIN{num1=20;num2=3;printf "%0.2f
    ",num1**num2}'
    

    awk 'BEGIN{x=20;y=x++;print x,y}'
    

    awk 'BEGIN{x=20;y=++x;print x,y}'
    

    awk 'BEGIN{x=20;y=--x;print x,y}'
    

    输出平均值

    awk '{total=$2+$3+$4+$5;AVG=total/4}{printf "%-8s%-5d%-5d%-5d%-8d%0.2f
    ",$1,$2,$3,$4,$5,AVG}' student.txt
    

    加上标题并格式化输出

    awk 'BEGIN{printf "%-10s%-10s%-10s%-10s%-10s%-10s
    ","name","Yuwen","math","English","Pysical","Average"}{total=$2+$3+$4+$5;AVG=total/4}{printf "%-10s%-10d%-10d%-10d%-10d%-10.2f
    ",$1,$2,$3,$4,$5,AVG}' student.txt
    

      

      

      

      

      

  • 相关阅读:
    数据查询语句
    数据操作语句
    数据定义语句
    linux的常用命令
    NIO/IO/AIO阻塞/非阻塞/同步/异步
    XCode使用自带SVN,SVN命令
    正则表达式大全——持续更新中。。。
    sql语句优化
    sql一些语句性能及开销优化
    高质量图片无损压缩算法
  • 原文地址:https://www.cnblogs.com/crazymagic/p/11154701.html
Copyright © 2011-2022 走看看