学习致谢:
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
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐