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

作者: 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