码迷,mamicode.com
首页 > 系统相关 > 详细

linux系统删除特定的行(sed命令)

时间:2020-11-11 15:49:36      阅读:9      评论:0      收藏:0      [点我收藏+]

标签:class   开头   col   创建   删除   linux   包含   编辑   color   

1、使用vim创建测试数据 a.txt

[root@linuxprobe test]# cat a.txt
1 w e t
2 s f h
3 z c g
4 e a g
5 a f w
6 k h d
7 w f r

 

2、删除指定的行

[root@linuxprobe test]# sed 3d a.txt ##删除第三行
1 w e t
2 s f h
4 e a g
5 a f w
6 k h d
7 w f r
[root@linuxprobe test]# sed 1,3d a.txt ## 删除1到3行
4 e a g
5 a f w
6 k h d
7 w f r
[root@linuxprobe test]# sed 1d;3d a.txt ## 删除第一行和第三行
2 s f h
4 e a g
5 a f w
6 k h d
7 w f r
[root@linuxprobe test]# sed /s/d a.txt ##删除匹配s的行
1 w e t
3 z c g
4 e a g
5 a f w
6 k h d
7 w f r
[root@linuxprobe test]# sed /w/d a.txt ##删除匹配w的行
2 s f h
3 z c g
4 e a g
6 k h d
[root@linuxprobe test]# sed /^5/d a.txt ## 删除以5开头的行
1 w e t
2 s f h
3 z c g
4 e a g
6 k h d
7 w f r
[root@linuxprobe test]# sed /^[35]/d a.txt ## 删除以3或者5开头的行
1 w e t
2 s f h
4 e a g
6 k h d
7 w f r
[root@linuxprobe test]# sed /h$/d a.txt ## 删除以h结尾的行
1 w e t
3 z c g
4 e a g
5 a f w
6 k h d
7 w f r
[root@linuxprobe test]# sed /[hw]$/d a.txt ## 删除以h或者w结尾的行
1 w e t
3 z c g
4 e a g
6 k h d
7 w f r
[root@linuxprobe test]# cat a.txt  ##使用vim编辑器重新编辑测试数据
1 w e t
2 s f 4
3 z c g
4 e a g
w a f w
6 k h d
t w f 2
[root@linuxprobe test]# sed /^[0-9]/d a.txt  ## 删除所有以数字开头的行
w a f w
t w f 2
[root@linuxprobe test]# sed /^[a-zA-Z]/d a.txt ## 删除所有以字母开头的行
1 w e t
2 s f 4
3 z c g
4 e a g
6 k h d
[root@linuxprobe test]# sed /[0-9]$/d a.txt ##删除所有以数字结尾的行
1 w e t
3 z c g
4 e a g
w a f w
6 k h d
[root@linuxprobe test]# sed /[a-zA-Z]$/d a.txt ##删除所有以字母结尾的行
2 s f 4
t w f 2
[root@linuxprobe test]# cat a.txt ## 使用vim 编辑器重新编辑测试数据
6 w e g
t s f g
2 z c g
2 e a t
y a f w
6 k h w
t w f 2
[root@linuxprobe test]# sed /^2.*g$/d a.txt  ## 删除以2开头,同时以g结尾的行
6 w e g
t s f g
2 e a t
y a f w
6 k h w
t w f 2

   [root@linuxprobe test]# cat a.txt ## 测试数据
   6 w e g
   t s f g
   2 z c g
   2 e a t
   y a f w
   6 k h w
   t w f 2

[root@linuxprobe test]# sed /e/,+1d a.txt ## 删除包含e及其后1行
2 z c g
6 k h w
t w f 2
[root@linuxprobe test]# sed /z/,+2d a.txt ## 删除包含z及其后2行
6 w e g
t s f g
6 k h w
t w f 2

 

linux系统删除特定的行(sed命令)

标签:class   开头   col   创建   删除   linux   包含   编辑   color   

原文地址:https://www.cnblogs.com/liujiaxin2018/p/13763879.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!