[sed]命令笔记

本文深入探讨了Linux sed工具的使用方法,包括如何进行文本替换和删除。详细介绍了sed命令的基本语法、参数及其应用实例,旨在帮助读者高效地处理文本文件。

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

sed是linux下经常用到的工具,英文全名为stream editor。

sed 在windows上的实现可以在这里找到 http://gnuwin32.sourceforge.net/packages/sed.htm 

特别注意,Windows下使用sed不能用单引号将命令参数包含起来!

支持正则表达式!


1、对每一行中替换被匹配的字符串

cat text.txt | sed 's/pattern/replacestr/' #对每行只操作一次
cat text.txt | sed 's/pattern/replacestr/g' #对每行中所有匹配都执行一次。

sed 's/pattern/replacestr/' test.txt 
sed 's/pattern/replacestr/g' test.txt

sed -i 's/pattern/replacestr/' test.txt
sed -i 's/pattern/replacestr/g' test.txt


s是替换命令的选项,g是s命令的参数。-i是sed的命令选项,指定用修改后的文件覆盖原始文件,如果-i紧跟着一个后缀,那么原文件会被备份,例如-i.back。



2、删除


find ./ -regex .*\.txt | xargs -I {} sed -i '4d' {} # 将当前目录下所有txt文件中第四行删除。删除指定行之后,后面的行向前移动一行。

sed '1~2d' test.txt #从第一行开始每隔2行删除一次。

sed '1,10d' test.txt # 删除1到10行

sed '$d' test.txt #删除最后一行

sed '/\<exp\>/d' test.txt # 将匹配行删除

sed '/exp/,$d' test.txt #从匹配行删除到最后一行




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值