美文网首页
Linux字符串处理「awk」

Linux字符串处理「awk」

作者: 乌木山 | 来源:发表于2019-11-30 16:30 被阅读0次

    awk是一个强大的字符串处理命令。awk的功能十分丰富,但是实际上只要需要学习少量使用方式,就能够解决平时遇到的大部分问题。因此本文也主要是介绍awk中处理常见问题的方式。

    命令介绍

    awk对文件/数据流是按行处理,awk会对每行数据,都执行一遍处理逻辑。awk的语法格式为 :
    awk [ -F fs ] [ -v var=value ] [ 'prog' | -f progfile ] [ file ... ]

    awk程序中,每一行数据都可以用$0输出。行数据会默认通过空格分隔成一组字符串,分隔后的数据可以用$1,$2...获取。当然awk也允许通过-F ''参数指定分隔符。

    awk的'prog'部分格式为 pattern { action }。
    其中pattern是对数据行进行过滤操作,不填则默认扫描每一行。action是处理逻辑。
    awk中包含了一些内嵌的变量、方法、运算符,可以根据需要查询具体使用方法 参考文档

    举例

    有如下数据,我想输出成绩在85以上的行:

    1);Amit;Physics;80
    2);Rahul;Maths;90
    3);Shyam;Biology;87
    4);Kedar;English;85
    5);Hari;History;89
    

    执行awk -F';' '{if($4>85){print $0}}' awk.txt即可。

    只要理解了awk的语法和处理原理,再结合相关文献,在实际使用中就能快速实现自己的处理述求。

    相关文章

      网友评论

          本文标题:Linux字符串处理「awk」

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