sed过滤后写入文件_sed 命令快速入门

本文介绍了Linux文本操作的三大利器:grep、sed和awk。grep擅长正则表达式搜索,sed用于流式编辑文本,awk则能进行复杂格式处理。通过示例展示了如何使用sed进行文本编辑,如自动编辑文件、删除和替换行。文章旨在帮助用户提升在Linux环境下处理文本的效率。

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

2bf996c7d2caf2c0e723053523af6db9.png

接上文:grep命令快速入门

Linux 文本操作的三大神器:grep、sed、awk,各自的最佳应用场景:

  • grep:使用正则表达式搜索文本,并把匹配的行打印出来,是强大的文本搜索工具;
  • sed:用于编辑匹配到的文本,是一种流编辑器;
  • awk:能够对文本进行复杂的格式处理,是一种处理文本的语言。

sed 是一种流编辑器,它一次处理一行的内容。处理时,把当前处理行的内容存储在缓冲区中,称为“模式空间(pattern space)”,接着通过sed命令处理模式空间中的内容,处理完成后,把模式空间中的内容输出到屏幕。

1、命令功能

sed 主要用于自动编辑一个或多个文件,简化对文件的反复操作。

2、命令格式

sed [options] '[地址定界] command' file

3、命令参数 options

  • -n:只打印匹配到的行
  • -e:多次匹配,相当于对每行处理时,顺序执行多个sed命令
  • -i:直接将处理结果写入文件

4、地址定界

  • 不给地址:默认对全文进行处理
  • 单地址:/pattern/,被pattern匹配到的每一行
  • 地址范围:#, #

5、编辑命令 command

  • d:删除模式空间匹配到的行
  • p:打印模式空间中的内容
  • s/old/new/g:将old替换为new,g表示行内全局替换

6、sed 应用示例

比如有一个hello.txt,内容如下:

36590f7db485784d92cde5c8b9244117.png

打印匹配到的行:

fd3ffa3fbbe75d901854e3600377a464.png

将hello替换为HELLO:

dabc0ef8ac858cdbb4886f32f588a009.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值