美文网首页
linux 命令 awk

linux 命令 awk

作者: 冰鋒 | 来源:发表于2017-03-17 16:42 被阅读0次

    awk使用

    sed -n '/queryAll2/p' 2017-02-20.log | awk -F ',' '{print $2}'| awk -F ' ' '{if (($1 >=13 && $2 =="Mar")) print $0 }' | wc -l

    awk   ' BEGIN  {size=0;}  {size=size+$5;}    END    {print " [end]  size is ", size}  '

    awk -F  ','   '{  print $2  }'

    if 语句: C格式

    if(expression) {

    statement;}

    awk -F  ':'    '  BEGIN   {count=0;} {name[count] = $1;count++;}; END  {for (i = 0; i < NR; i++) print i, name[i]}   '    filename

    其他用法:

    非精确匹配:

    awk  ' $1~/man/{print $0} '  filename 

     输出第1列中的字符串 含有man的   那行记录;

    精确匹配:

    awk ' $1 == "man"  filename

    批量修改:

    awk  ' { if($1~/man/)   { $1 ="WOMAN"  print $0 } } '

    该例调用了awk内置函数gsub(r,s),匹配正则表达式~/man/   替换;

    附:内置常量

    ARGC              命令行参数个数

    ARGV              命令行参数排列

    ENVIRON            支持队列中系统环境变量的使用

    FILENAME          awk浏览的文件名

    FNR                浏览文件的记录数

    FS                设置输入域分隔符,等价于命令行-F选项

    NF                浏览记录的域的个数

    NR                已读的记录数

    OFS                输出域分隔符

    ORS                输出记录分隔符

    RS                控制记录分隔符

    将所有的awk命令插入一个单独文件,然后调用:awk -f    awk-script-file    input-file(s)

    其中,-f选项加载awk-script-file中的awk脚本,input-file(s)跟上面的是一样的


    相关文章

      网友评论

          本文标题:linux 命令 awk

          本文链接:https://www.haomeiwen.com/subject/blimsttx.html