【centos中查找并替换某个目录下所有文件中的某个字符串】centos中查找并替换某个目录下所有文件中的某个字符串

更新时间:2019-11-20    来源:CentOS    手机版     字体:

【www.bbyears.com--CentOS】


因为某种原因项目中的某个方法丢失,而很多文件引用了该方法,需要将其全部替换为一个新的方法,引用的次数很多,手动改太麻烦.所以需要一次性替换.

例如要将目录 dir 下面所有文件中的 old 都修改成 new:

sed -i "s/old/new/g" `grep "old" -rl dir`

1、查找目录下包含某个字符串的文件

例:查找 dir 目录下所有包含 str 的文件。


grep -lr "str" dir 

2、vim替换单个文件中所有字符串方法

例:替换当前文件中所有 old 为 new


:%s/old/new/g 

3、替换目录下所有文件中到某个字符串——sed结合grep

例:要将目录 dir 下面所有文件中的 old 都修改成new,这样做:


sed -i "s/old/new/g" `grep "old" -rl dir` 

4、批量替换多个文件中的字符串的简单方法。

用sed命令可以批量替换多个文件中的字符串。
               
sed -i "s/原字符串/新字符串/g" `grep 原字符串 -rl 所在目录`
例如:我要把mahuinan替换为huinanma,

 

执行命令:sed -i "s/mahuinan/huinanma/g" "grep mahuinan -rl /www"

这是目前linux最简单的批量替换字符串命令了!
具体格式如下:

sed -i "s/oldString/newString/g" `grep oldString -rl /path`

 实例代码:sed -i "s/大小多少/日月水火/g" `grep 大小多少 -rl /usr/aa`
sed -i "s/大小多少/日月水火/g" `grep 大小多少 -rl ./`
这里要注意,相关要进行转义:

实例:


sed -i "s/<script src=\"http:\/\/ajax.googleapis.com\/ajax\/libs\/jquery\/1.4\/

query.min.js\" type=\"text\/javascript\"><\/script>/ /g"

`grep "<script src="http:\/\/ajax.googleapis.com\/ajax\/libs\/jquery\/1.4\/

jquery.min.js" type="text\/javascript"><\/script>" -rl test/`
 

本文来源:http://www.bbyears.com/caozuoxitong/80292.html

热门标签

更多>>

本类排行