• 如果你也想在linux中删除指定行


    学习致谢:
    https://www.yisu.com/zixun/724766.html

    示例文档

    [root@singleNode ~]$ cat temp.csv 
    1 Linux Operating System
    2 Unix Operating System
    3 RHEL
    4 Red Hat
    5 Fedora
    6 Arch Linux
    7 Centos
    8 Debian 
    9 Ubuntu
    10 openSUSE
    

    (1)删除某一行

    sed 'Nd' file
    

    示例1——删除第一行

    [root@singleNode ~]$ sed '1d' temp.csv 
    2 Unix Operating System
    3 RHEL
    4 Red Hat
    5 Fedora
    6 Arch Linux
    7 Centos
    8 Debian 
    9 Ubuntu
    10 openSUSE
    

    示例2——删除最后一行

    [root@singleNode ~]$ sed '$d' temp.csv 
    1 Linux Operating System
    2 Unix Operating System
    3 RHEL
    4 Red Hat
    5 Fedora
    6 Arch Linux
    7 Centos
    8 Debian 
    9 Ubuntu
    

    (2)删除某些行

    Ⅰ、删除连续的几行

    sed '5,7d' file
    

    示例

    [root@singleNode ~]$ sed '5,7d' temp.csv 
    1 Linux Operating System
    2 Unix Operating System
    3 RHEL
    4 Red Hat
    8 Debian 
    9 Ubuntu
    

    Ⅰ、删除不连续的几行

    sed '1d;5d;9d;$d' file
    

    示例1

    [root@singleNode ~]$ sed '1d;5d;9d;$d' temp.csv      
    2 Unix Operating System
    3 RHEL
    4 Red Hat
    6 Arch Linux
    7 Centos
    8 Debian 
    

    示例2——逻辑非 ! 使用,比如删除第a到 b行以外的其他行

    [root@singleNode ~]$ sed '3,6!d' temp.csv 
    3 RHEL
    4 Red Hat
    5 Fedora
    6 Arch Linux
    

    (3)删除空白行

    sed '/^$/d' file
    

    (4)删除包含特定字符的行

    sed '/System/d' file
    

    示例——删除包含System的行

    [root@singleNode ~]$ sed '/System/d' temp.csv 
    3 RHEL
    4 Red Hat
    5 Fedora
    6 Arch Linux
    7 Centos
    8 Debian 
    9 Ubuntu
    10 openSUSE
    

    (5)删除特定字符开头的行

    示例——删除以 6 开头的行

    [root@singleNode ~]$ sed '/^6/d' temp.csv  
    1 Linux Operating System
    2 Unix Operating System
    3 RHEL
    4 Red Hat
    5 Fedora
    7 Centos
    8 Debian 
    9 Ubuntu
    10 openSUSE
    

    (6)删除特定字符结尾的行

    sed '/m$/d' file
    

    示例——删除以 x 或 m 结尾的行

    [root@singleNode ~]$ sed '/[xm]$/d' temp.csv  
    3 RHEL
    4 Red Hat
    5 Fedora
    7 Centos
    8 Debian 
    9 Ubuntu
    10 openSUSE
    

    (7)删除以大写字母开头的行

    sed '/^[A-Z]/d' file
    

    示例

    [root@singleNode ~]$ sed '/[A-Z]$/d' temp.csv  
    1 Linux Operating System
    2 Unix Operating System
    4 Red Hat
    5 Fedora
    6 Arch Linux
    7 Centos
    8 Debian 
    9 Ubuntu
    

    (8)删除包含字母字符的行

    sed '/[A-Za-z]/d' file
    

    (9)删除包含数字的行

    sed '/[0-9]/d' file
    
  • 相关阅读:
    springboot:java操作docker(docker-java)的基本使用
    行高的继承和消除内外边距
    【毕业设计】基于stm32的WiFi监控小车 - 物联网 单片机 嵌入式
    运行ps显示msvcp140.dll丢失怎么恢复?msvcp140.dll快速解决的4个不同方法
    Vue 源码解读(6)—— 实例方法
    QML(26)——多层qml界面传递信号
    LeetCode 面试题 16.07. 最大数值
    阿里的 24W 字 Java 面试复盘指南!
    南王科技IPO过会:年营收12亿 华莱士关联方持有近28%股权
    Kibana配置ES集群
  • 原文地址:https://blog.csdn.net/weixin_41311528/article/details/127108981