Linux批量查找与替换

Posted morgan363

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux批量查找与替换相关的知识,希望对你有一定的参考价值。

 

Linux批量查找并替换文件夹下所有文件的内容

 

经常要使用到 Linux的批量查找与替换,这里为大家介绍使用 sed 命令和 grep 命令的结合来实现查找文件中的内容并替换。

 

语法格式:

sed -i "s/原字符串/新字符串/g" `grep -rl 原字符串 所在目录`

  

实例:

1.实现批量查找当前目录下包含 baidu 字符串的所有文件,例如:

grep -rn "baidu" ./

  

2.实现批量查找并替换当前文件夹下的包含 baidu.com 字符串的所有文件,并将其替换成 qq.com。

sed -i "s/baidu.com/qq.com/g" `grep -rl "baidu.com" ./`

  

3.实现批量查找并替换/data文件夹下的包含 baidu.com 字符串的所有文件,并将其替换成 qq.com。

sed -i "s/baidu.com/qq.com/g" `grep -rl "baidu.com" /data/`


使用命令时注意命令与参数之间空格的存在!

 

4.更复杂的实例,批量替换网址 https://www.baidu.com 为 https://www.qq.com/hb

sed -i "s/https:\/\/www.baidu.com/https:\/\/www.qq.com\/hb/g" `grep -rl "https:\/\/www.baidu.com" ./`

  

 

以上是关于Linux批量查找与替换的主要内容,如果未能解决你的问题,请参考以下文章

如何批量执行sql查找替换?

linux下批量替换文件内容

[转帖]Linux下批量替换文件内容方法

Linux下 批量替换文件内容方法和odoo替换谷歌字体

linux批量替换文件夹名,文件名,文件内容命令

Linux下批量替换文件内容和文件名(转)