当前位置:   article > 正文

sed基本使用_sed -n命令

sed -n命令
  1. 删除由空格组成的空白行
    sed ‘/^ *$/d’ test.txt sed ‘/[ ][ ]/d’ test.txt

  2. 删除空白行
    sed ‘/1*$/d’ test.txt

  3. 删除空格开头的行
    sed ‘/^ /d’ test.txt

  4. 删除制表符(tab)的空白行
    sed ‘/\t/d’ test.txt
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    在这里插入图片描述
    5. 删除字母开头的行
    sed ‘/2/d’ test.txt

  5. 删除以注释行
    sed ‘/^#/d’ test.txt

  6. 删除指定行
    sed ‘2d’ test.txt

  7. 删除多行
    sed ‘1,3d’ test.txt —删除1到3行
    sed ‘3,$d’ test.txt —删除第三行到最后一行

  8. 打印
    sed ‘2p’ test.txt —打印第2行
    sed -n ‘2p’ test.txt —打印第2行,不显示文件内容
    sed -n ‘2,5p’ test.txt —打印2-5行

  9. 替换
    sed ‘s/4/8/’ test.txt —4替换8,每行第一个4替换为8
    sed ‘s/4/8/’ test.txt —将每行所有的4替换为8
    sed ‘/asf21/s/e/8/’ test.txt —先查看asf21再讲e替换为8
    sed -e ‘1d’ -e ‘s/asf/21/g’ test.txt —多重编辑,先删除第一行,再替换asf为21
    sed ‘/asf/c 123’ test.txt —查找asf的行全部覆盖为123

  10. 插入
    sed ‘/sad/a 123’ test.txt —在sad后面插入一行123
    sed ‘/sad/i 123’ test.txt —在sad前面插入一行123

  11. 退出
    sed ‘8q’ test.txt —打印前8行后退出

  12. 抓取ip地址
    ifconfig ens33 | sed ‘/.inet /!d;s///;s/ .//’
    .*inet: .表示任意字符,任意多个前导字符
    inet 192.168.163.130 netmask 255.255.255.0 broadcast 192.168.163.255
    s///:前面//不适用配置规则,则使用上一步的匹配结果
    后//匹配为空字符串删除
    192.168.163.130 netmask 255.255.255.0 broadcast 192.168.163.255
    s/ .
    //:将1个空格和后面的任意字符串删除
    192.168.163.130
    在这里插入图片描述


  1. [:space:] ↩︎

  2. a-Z ↩︎

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/322966
推荐阅读
相关标签
  

闽ICP备14008679号