zoukankan      html  css  js  c++  java
  • sed 使用 删除匹配行

    “p” command prints the buffer (remember to use -n option with “p”) 
    “d” command is just opposite, its for deletion. ‘d’ will delete the pattern space buffer and immediately starts the next cycle. 

    Syntax: 
    # sed 'ADDRESS'd filename 
    # sed /PATTERN/d filename 

    Let us first creates thegeekstuff.txt file that will be used in all the examples mentioned below. 
    # cat thegeekstuff.txt 
    1. Linux - Sysadmin, Scripting etc. 
    2. Databases - Oracle, mySQL etc. 
    3. Hardware 
    4. Security (Firewall, Network, Online Security etc) 
    5. Storage 
    6. Cool gadgets and websites 
    7. Productivity (Too many technologies to explore, not much time available) 
    8. Website Design 
    9. Software Development 
    10.Windows- Sysadmin, reboot etc. 

    例子1:删除第n行 
    sed ‘Nd’ filename 

    As per sed methodology, 
    It reads the first line and places in its pattern buffer. 
    Check whether supplied command is true for this line, if true, deletes pattern space buffer and starts next cycle. i.e Read next line. 
    If supplied command doesnt true, as its normal behaviour it prints the content of the pattern space buffer. 

    $ sed 3d thegeekstuff.txt 
    1. Linux - Sysadmin, Scripting etc. 
    2. Databases - Oracle, mySQL etc. 
    4. Security (Firewall, Network, Online Security etc) 
    5. Storage 
    6. Cool gadgets and websites 
    7. Productivity (Too many technologies to explore, not much time available) 
    8. Website Design 
    9. Software Development 

    10.Windows- Sysadmin, reboot etc.

    例2:从第三行开始,每隔一行删除 
    $sed 3~2d thegeekstuff.txt 

    1. Linux - Sysadmin, Scripting etc. 
    2. Databases - Oracle, mySQL etc. 
    4. Security (Firewall, Network, Online Security etc) 
    6. Cool gadgets and websites 
    8. Website Design 
    10.Windows- Sysadmin, reboot etc. 

    $

    例3:删除从第4行到第8行 
    $sed 4,8d thegeekstuff.txt 

    1. Linux - Sysadmin, Scripting etc. 
    2. Databases - Oracle, mySQL etc. 
    3. Hardware 
    9. Software Development 
    10.Windows- Sysadmin, reboot etc. 
    $sed '4,8d' thegeekstuff.txt 
    1. Linux - Sysadmin, Scripting etc. 
    2. Databases - Oracle, mySQL etc. 
    3. Hardware 
    9. Software Development 
    10.Windows- Sysadmin, reboot etc. 
    $sed '4,8'd thegeekstuff.txt 
    1. Linux - Sysadmin, Scripting etc. 
    2. Databases - Oracle, mySQL etc. 
    3. Hardware 
    9. Software Development 

    10.Windows- Sysadmin, reboot etc.

    例4:删除最后一行 
    $sed '$'d thegeekstuff.txt 

    1. Linux - Sysadmin, Scripting etc. 
    2. Databases - Oracle, mySQL etc. 
    3. Hardware 
    4. Security (Firewall, Network, Online Security etc) 
    5. Storage 
    6. Cool gadgets and websites 
    7. Productivity (Too many technologies to explore, not much time available) 
    8. Website Design 
    9. Software Development 
    $sed '$d' thegeekstuff.txt 
    1. Linux - Sysadmin, Scripting etc. 
    2. Databases - Oracle, mySQL etc. 
    3. Hardware 
    4. Security (Firewall, Network, Online Security etc) 
    5. Storage 
    6. Cool gadgets and websites 
    7. Productivity (Too many technologies to explore, not much time available) 
    8. Website Design 

    9. Software Development

    例5:行匹配删除 
    $sed /Sysadmin/d thegeekstuff.txt 

    2. Databases - Oracle, mySQL etc. 
    3. Hardware 
    4. Security (Firewall, Network, Online Security etc) 
    5. Storage 
    6. Cool gadgets and websites 
    7. Productivity (Too many technologies to explore, not much time available) 
    8. Website Design 
    9. Software Development 
    $sed '/Sysadmin/d' thegeekstuff.txt 
    2. Databases - Oracle, mySQL etc. 
    3. Hardware 
    4. Security (Firewall, Network, Online Security etc) 
    5. Storage 
    6. Cool gadgets and websites 
    7. Productivity (Too many technologies to explore, not much time available) 
    8. Website Design 
    9. Software Development 
    $sed '/Sysadmin/'d thegeekstuff.txt 
    2. Databases - Oracle, mySQL etc. 
    3. Hardware 
    4. Security (Firewall, Network, Online Security etc) 
    5. Storage 
    6. Cool gadgets and websites 
    7. Productivity (Too many technologies to explore, not much time available) 
    8. Website Design 
    9. Software Development 

    $

    例6:从匹配行到末尾行 
    $sed '/Website Design/,$d' thegeekstuff.txt 

    1. Linux - Sysadmin, Scripting etc. 
    2. Databases - Oracle, mySQL etc. 
    3. Hardware 
    4. Security (Firewall, Network, Online Security etc) 
    5. Storage 
    6. Cool gadgets and websites 
    7. Productivity (Too many technologies to explore, not much time available) 
    $sed '/Website Design/,$'d thegeekstuff.txt 
    1. Linux - Sysadmin, Scripting etc. 
    2. Databases - Oracle, mySQL etc. 
    3. Hardware 
    4. Security (Firewall, Network, Online Security etc) 
    5. Storage 
    6. Cool gadgets and websites 

    7. Productivity (Too many technologies to explore, not much time available)

    例7:删除匹配行和之后两行 
    $sed '/Storage/,+2d' thegeekstuff.txt 

    1. Linux - Sysadmin, Scripting etc. 
    2. Databases - Oracle, mySQL etc. 
    3. Hardware 
    4. Security (Firewall, Network, Online Security etc) 
    8. Website Design 
    9. Software Development 
    10.Windows- Sysadmin, reboot etc. 
    $sed '/Storage/,+2'd thegeekstuff.txt 
    1. Linux - Sysadmin, Scripting etc. 
    2. Databases - Oracle, mySQL etc. 
    3. Hardware 
    4. Security (Firewall, Network, Online Security etc) 
    8. Website Design 
    9. Software Development 

    10.Windows- Sysadmin, reboot etc.

    例8:删除空行 
    $sed '/^$/d' thegeekstuff.txt 

    1. Linux - Sysadmin, Scripting etc. 
    2. Databases - Oracle, mySQL etc. 
    3. Hardware 
    4. Security (Firewall, Network, Online Security etc) 
    5. Storage 
    6. Cool gadgets and websites 
    7. Productivity (Too many technologies to explore, not much time available) 
    8. Website Design 
    9. Software Development 
    10.Windows- Sysadmin, reboot etc.

    每天一小步,人生一大步!Good luck~
  • 相关阅读:
    团队一手机便签一阶段互评
    课后作业-阅读任务-阅读笔记-3
    课后作业-阅读任务-阅读提问-3
    团队-手机便签-开发文档
    《结对-航空购票系统-结对项目总结》
    作业1 :四则运算
    自己设计大学排名--python数据库
    python文件读写笔记和我的第一个网站
    python我的一个爬虫和测试
    python:成绩雷达图和手绘图片
  • 原文地址:https://www.cnblogs.com/jkmiao/p/4862351.html
Copyright © 2011-2022 走看看