linux三剑客之se‘d

sed

Linux sed 命令是利用脚本来处理文本文件。
sed 可依照脚本的指令来处理、编辑文本文件。
sed 主要用来自动编辑一个或多个文件、简化对文件的反复操作、编写转换程序等。
sed命令中的a命令
a命令用于在指定行后添加文本。它的语法如下:
sed '行号 a要添加的文本' 文件名
[root@localhost ~]# vim qwer
[root@localhost ~]# cat qwer 
aa223
bb2312
cc98924
dd23123
1123134
2314124
[root@localhost ~]# sed '1ahelloe world' qwer 
aa223
helloe world
bb2312
cc98924
dd23123
1123134
2314124


[root@localhost ~]# cat qwer 
aa223
bb2312
cc98924
dd23123
1123134
2314124 
[root@localhost ~]# sed '1a\        helloe world' qwer 
aa223
        helloe world
bb2312
cc98924
dd23123
1123134
2314124

sed命令中的i命令

sed '行号 i 要插入的文本' 文件名
[root@localhost ~]# cat qwer 
aa223
bb2312
cc98924
dd23123
1123134
2314124
[root@localhost ~]# sed '2ipppwww' qwer 
aa223
pppwww
bb2312
cc98924
dd23123
1123134
2314124

sed命令中的c命令

sed '行号 c 要替换的文本' 文件名
其中,行号表示要替换的行号,要替换的文本是要替换的具体内容。
[root@localhost ~]# cat qwer 
aa223
bb2312
cc98924
dd23123
1123134
2314124
[root@localhost ~]# sed '2c123helloe world' qwer 
aa223
123helloe world
cc98924
dd23123
1123134
2314124

[root@localhost ~]# cat qwer 
aa223
bb2312
cc98924
dd23123
1123134
2314124
[root@localhost ~]# sed '$c778899' qwer      # $表示最后一行
aa223
bb2312
cc98924
dd23123
1123134
778899

sed命令中的n命令

n命令用于打印指定行的文本。它的语法如下:
sed -n '行号 p' 文件名
[root@localhost ~]# cat qwer 
aa223
bb2312
cc98924
dd23123
1123134
2314124
[root@localhost ~]# sed -n '3p' qwer 
cc98924

sed ‘行号 d’ 文件名

d命令用于删除指定的行。它的语法如下:

[root@localhost ~]# cat qwer 
aa223
bb2312
cc98924
dd23123
1123134
2314124
#删除第一行内容
[root@localhost ~]# sed '1d' qwer
bb2312
cc98924
dd23123
1123134
2314124

#删除2至4行的内容
[root@localhost ~]# cat qwer 
aa223
bb2312
cc98924
dd23123
1123134
2314124
[root@localhost ~]# sed '2,4d' qwer 
aa223
1123134
2314124

sed命令中的N命令

在sed命令中,N命令用于将下一行添加到模式空间中,并用换行符分隔。这可以用于在对多行文本进行处理时,将多行合并为单行。

N命令没有参数,它只是简单地将下一行添加到模式空间中。当sed命令处理输入时,它会逐行读取文本,并将每一行放入模式空间中进行处理。N命令可以在模式空间中添加下一行,以便一次处理多行。
[root@localhost ~]# cat file.txt
aa 1
bb 2
cc 3
dd 4
#将每两行合并为一行
[root@localhost ~]# sed 'N;s/\n//' file.txt
aa 1 bb 2
cc 3 dd 4

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值