• awk 和 sed (Stream Editor)


    1.sed 

    pattern space(模式空间)相当于车间sed把流内容在这里处理;

    hold space(保留空间)相当于仓库,加工的半成品在这里临时储存(当然加工完的成品也在这里存储)。

    h/H  :copy/append pattern space to hold space(复制或者追加模式空间的数据至保留空间);

    g/G  :copy/append hold space to pattern space(复制或者追加保留空间的数据至模式空间);

    n/N  :Read/append the next line of input into the pattern space.(读取或追加模式空间数据的下一行数据);

     x         :exchange the contents of pattern space and hold space(交换模式空间和保留空间的数据);

    d          :Delete pattern space.  Start next cycle. (删除模式空间内容);

    h/H和g/G以及x联合起来用,可以达到栈和队列的使用目的。


    sed 'G' a.txt
    因为hold space的初始为一个空行,并且始终没有修改其中的数据,所以结果是每行数据之后多了空行。

    sed 'h;G' a.txt
    模式空间复制到保留空间,将保留空间复制到模式空间,结果是复制每一行数据。

    sed 'p' a.txt
    输出模式空间的内容

    sed -n '' a.txt
    缺少了p命令,不能将pattern space中的数据进行输出, 结果是空

    sed -n 'n;p' a.txt
    n表示读取模式空间的下一行,结果是只显示偶数行


    sed -n 'p;n' a.txt
    奇数行显示

    sed -n '1!G;h;$p' a.txt
    倒序显示
    在1或$命令中添加!,表示第一行或者最后一行不执行这个命令。

    参考:

    sed

    出处:

    awk 和 sed 

    sed命令简单使用-pattern space与hold space  

  • 相关阅读:
    初级模拟玩骰子猜大小游戏
    会员号的百位数字等于产生的随机数即为幸运会员
    课外作业1:将一个double类型的小数,按照四舍五入保留两位小数
    git idea tag push
    java进程资源监控
    websocket
    kafka win10搭建 单机版
    kafka细节知识---mark
    Springboot 1.5.7整合Kafka-client
    redis安装 centos
  • 原文地址:https://www.cnblogs.com/yuyutianxia/p/7967689.html
Copyright © 2020-2023  润新知