Linux文本处理工具sed(流编辑器)

本文介绍了Linux的sed流编辑器用于文本处理的基本用法,包括在文件中插入新行、删除特定行、替换文本内容等操作。通过示例展示了如何使用sed命令对sed.txt文件进行编辑,如在第三行插入文本、删除包含特定词的行以及替换指定单词。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Linux文本处理工具sed(流编辑器)

sed是一种流编辑器,它一次处理一行内容。
处理时,把当前处理的行存储在临时缓冲区(模式空间)中,接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送到屏幕。接着处理下一行,这样不断重复直到文件末尾。文件内容并没有改变,除非你使用重定向存储输出。

  1. 基本用法
    sed[选项参数] ‘command’ filename
  2. 选项参数
    -e:直接在指令列模式上进行sed的动作编辑
  3. 命令功能
    a:新增,a的后面可以接字符串,在下一行出现
    d:删除
    s:查找并替换

1. 数据文件sed.tx

张三 男 28
李四 男 31
Lily 女 32

2.将 “Lucy 女 29”插入到sed.txt的第三行

sed ‘2a Lucy 女 29’ sed.txt

[root@localhost jiaoben]# cat sed.txt
张三 男 28
李四 男 31
Lily 女 32
[root@localhost jiaoben]# sed '2a Lucy 女 29' sed.txt
张三 男 28
李四 男 31
Lucy 女 29
Lily 女 32
[root@localhost jiaoben]# cat sed.txt
张三 男 28
李四 男 31
Lily 女 32

sed.txt 文件并没有改变

3. 删除sed.txt中包含Lily的hang

sed ‘/Lily/d’ sed.txt

[root@localhost jiaoben]# cat sed.txt
张三 男 28
李四 男 31
Lily 女 32
[root@localhost jiaoben]# sed '/Lily/d' sed.txt
张三 男 28
李四 男 31

4. 将sed.txt中Lily替换为Lucy

sed ‘s/Lily/Lucy/g’ sed.txt

[root@localhost jiaoben]# cat sed.txt
张三 男 28
李四 男 31
Lily 女 32
[root@localhost jiaoben]# sed 's/Lily/Lucy/g' sed.txt
张三 男 28
李四 男 31
Lucy 女 32

5. 将sed.txt文件中第2行删除并将Lily替换为Lucy

sed -e ‘2d’ -e ‘s/Lily/Lucy/g’ sed.txt

[root@localhost jiaoben]# cat sed.txt
张三 男 28
李四 男 31
Lily 女 32
[root@localhost jiaoben]# sed -e '2d' sed.txt
张三 男 28
Lily 女 32
[root@localhost jiaoben]# cat sed.txt
张三 男 28
李四 男 31
Lily 女 32
[root@localhost jiaoben]# sed -e '2d' -e 's/Lily/Lucy/g' sed.txt
张三 男 28
Lucy 女 32
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值