一、linux批量替换文件内容 :

sed -i "s/旧内容/新内容/g" `grep 旧内容 -rl 文件夹路径`

例如将/var/www/test文件夹下的所有文件内容中的abc字符串换成123

sed -i "s/abc/123/g" `grep abc -rl /var/www/test`

注:grep内容用的不是单引号",而是`,tab键上面的,请使用绝对路径

二、替换文件内所有匹配的字符串 :

sed -i "s/旧内容/新内容/g" 文件路径

例如将/var/www/test/index.html文件夹下的所有文件内容中的abc字符串换成123

sed -i "s/abc/123/g" /var/www/test/index.html

三、替换每一行中全部str1为str2

:%s/str1/str2/g

替换当前行全部str1为str2

:s/str1/str2/g

四、例

sed -i "s#'2022-08-01' and '2022-08-20'#'2022-07-01' and '2022-08-01'#g" `grep "'2022-08-01' and '2022-08-20'" -rl *.ktr`
sed -i "s/<commit>999/<commit>11/g" `grep '<commit>999' -rl /data/sh/wlhy/ktr`
sed -i "s#'2022-08-01' and '2022-08-20'#'2022-07-01' and '2022-08-01'#g" `grep "'2022-08-01' and '2022-08-20'" -rl *.ktr`
sed -i "s/FROM t_wlhy_driver/FROM t_wlhy_driver WHERE (CREATE_DATE IS NOT NULL AND DATE_SUB(CURDATE(), INTERVAL 30 DAY) \&lt\;= date(CREATE_DATE)) OR (UPDATE_DATE IS NOT NULL AND DATE_SUB(CURDATE(), INTERVAL 30 DAY) \&lt\;= date(UPDATE_DATE))/g" `grep 'FROM t_wlhy_driver' -rl wlhy-t_wlhy_driver_*.ktr`

总结

如果此篇文章有帮助到您, 希望打大佬们能关注点赞收藏评论支持一波,非常感谢大家!
如果有不对的地方请指正!!!
参考1
参考2

更多推荐

linux批量替换文件内容