Shell中的查找和替换的sed命令

博客介绍了在Bash中替换文本的方法,包括替换单个文件中的文本和替换文件夹中所有文件里的文本。详细说明了命令格式、参数解析,如search_str、target_str等,还给出了使用转义符的示例及命令解析。

一、替换文件中的文本

命令格式:

sed -i 's/<search_str>/<target_str>/g' <file_path>

参数解析:
search_str:需要搜索的字符串(字符串带斜杠’/‘,需要有转移’//‘)
target_str:需要替换成的目标字符串(字符串带斜杠’/‘,需要有转移’//')
file_path:操作的文件路径

举例:
a.txt文件中的abc字符替换为xyz

sed -i 's/abc/xyz/g' a.txt

a.txt文件中的/a字符替换为-b,注意使用了转义符。

sed -i 's/\/a/-b/g' a.txt

二、替换文件夹中文件中的文本

命令格式:

sed -i 's/<search_str>/<target_str>/g' `grep "<search_str>" -rl <folder_path>`

参数解析:
search_str:需要搜索的字符串(字符串带斜杠’/‘,需要有转移’//‘)
target_str:需要替换成的目标字符串(字符串带斜杠’/‘,需要有转移’//')
folder_path:操作的文件夹路径

命令解析:
1、前半节是sed的命令
2、后半节是寻找文件夹目录中满足搜索条件的文件,注意顿号"`",不是逗号

举例:
/opt/a目录下的所有文件中的abc字符串替换为xzy

sed -i 's/abc/xyz/g' `grep "abc" -rl /opt/a`
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值