linux sed删除指定行_linux/unix中如何使用sed一次替换多个模式

文本处理是我们使用linux/unix必须掌握的一项技能。

前两篇文章介绍了如何删除文本文件中的空行以及如何删除文本文件中包含指定字符串的行。

本文主要介绍如何使用sed命令一次替换多个模式。

以下是测试中使用的文本文件内容,我们将使用它来演示如何使用sed命令进行字符串替换:

This is a linux sed command test file.sed replace pattern.sed replace multiple patterns.

在进行正式介绍之前,让我们回顾一下如何使用sed命令进行替换模式。

sed 模式替换

在下面的示例中,我们将使用sed命令将测试文件中的“ sed”字符串替换为“ awk”。

➜  ~ sed 's/sed/awk/g' text.log# OR➜  ~ sed -e 's/sed/awk/g' text.log
8b8f236d42d2631359ffc804fdb3a1ab.png

以上所有方法均使用sed单模式替换。让我们看一下如何使用sed命令进行多种模式替换。

sed 多模式替换

在以下示例中,我们将使用sed命令立即完成多模式替换,在测试中将“ sed”替换为“ awk”,将“ command”替换为“ cmd”。

➜  ~ sed -e 's/sed/awk/g' -e 's/command/cmd/g' text.log# OR➜  ~ sed 's/sed/awk/g;s/command/cmd/g' text.log
37dc766c69a3402cd6ea4a7cae9ab380.png

如果要直接修改文件的内容,可以使用sed -i选项。

也可以通过多个sed命令组合和linux 管道来完成用上述sed命令完成的多模式替换。

➜  ~ sed 's/awk/sed/g' text.log | sed 's/command/cmd/g'
13125a9bd0e9074314cb6410d246f258.png
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值