批量替换多个文件中的字符

作者: wilsonflying | 来源:发表于2019-02-01 16:17 被阅读0次

linux下shell中:

sed -i  "s/oldstring/newstring/g" tmp.txt
sed -i  "s/oldstring/newstring/g" `grep "oldstring" -rl ./`
grep "oldstring"  -rl ./ |xargs sed -i "s/oldstring/newstring/g"

mac下shell略有不同,需要多加个空字符串""

sed -i  "" "s/oldstring/newstring/g" tmp.txt
sed -i  "" "s/oldstring/newstring/g" `grep "oldstring" -rl ./`
grep "oldstring"  -rl ./ |xargs sed -i "" "s/oldstring/newstring/g"

sed中参数s表示替换,g表示全部,如果不加g则会之替换一行中的第一个oldstring。

查看man手册,显示添加空字符串则不会保存备份,在崩溃和磁盘空间用完的情况下会有风险,这……大概是中彩票的几率吧,而且不加的话也执行不成功哇

相关文章

网友评论

    本文标题:批量替换多个文件中的字符

    本文链接:https://www.haomeiwen.com/subject/dnsdsqtx.html