转载自:http://bbs.phpchina.com/blog-191373-187668.html
方法1
 
这两天在构建一个应用的使用用到了maven,由于project很大,足足有700多个 pom.xml文件,更郁闷的是在很多pom.xml文件里都单独指定了资源库的url,我需要把这些资源库的url统一指定到nexus本地中央库.
手 工一个个改文件配置有点不太实际,所以google了一下,找到批量替换文件内容的好方法,命令结构如下:
find -name '要查找的文件名' | xargs perl -pi -e 's|被替换的字符串|替换后的字符串|g'

下面这个例子就是将当前目录及所有子目录下的所有pom.xml文件中的“http://repo1.maven.org/maven2” 替换为“http://localhost:8081/nexus/content/groups/public&”.

find -name 'pom.xml' | xargs perl -pi -e 's|http://repo1.maven.org/maven2|http://localhost:8081/nexus/content /groups/public|g'

这里用到了Perl语言,
perl -pi -e

在Perl 命令中加上-e 选项,后跟一行代码,那它就会像运行一个普通的Perl 脚本那样运行该代码.
从命令行中使用Perl 能够帮助实现一些强大的、实时的转换。认真研究正则表达式,并正确地使用,将会为您省去大量的手工编辑工作。
find -name 'pom.xml' | xargs perl -pi -e 's|http://repo1.maven.org/maven2|http://localhost:8081/nexus/content/groups/public|g'

方法2

Linux下批量替换多个文件中的字符串的简单方法。用sed命令可以批量替换多个文件中的字符串。
用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 ./`

方法3

在日程的开发过程中,可能大家会遇到将某个变量名修改 为另一个变量名的情况,如果这个变量是一个局部变量的话,vi足以胜任,但是如果是某个全局变量的话,并且在很多文件中进行了使用,这个时候使用vi就是 一个不明智的选择。这里给出一个简单的shell命令,可以一次性将所有文件中的指定字符串进行修改:

grep "abc" * -R | awk -F: '{print $1}' | sort | uniq | xargs sed -i 's/abc/abcde/g'

from: http://blog.zol.com.cn/1395/article_1394052.html

补充说明:

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

对多个文件的处理可能不支持,需要用 xargs, 搞定。

变种如下:

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

注意

`grep oldString -rl /path`    

` 为1前边的翻引号`,引起的内容表示将该shell命令执行后的数据结果应用于该指令中,该引号不是enter 前的 '

转载于:https://www.cnblogs.com/turtle-fly/archive/2013/03/13/2957212.html

[转载]Linux批量替换不同文件中的相同字符串相关推荐

  1. linux 批量替换所有文件中包含的字符串

    sed -i "s/原来字符串/新字符串/g" `grep 原来字符串 -rl .`格式: sed -i "s/查找字段/替换字段/g" `grep 查找字段 ...

  2. linux find批量替换java文件中字符串

    linux批量替换java文件中字符串find ./ -name '*.java' | xargs perl -pi -e 's|MoonlightL|ZXL|g' find ./ -name '*. ...

  3. php替换文件中的数据库,批量替换php文件中的class,id的值

    批量替换php文件中的class,id的值 $val="wqewq 替换成"wqewq //其实也就是在class,id值后面加上一个字符串 //我要替换的是文件里的.所以要从文件 ...

  4. 批量替换一个文件中的文件名,例如将文件夹中s**_abnormal.jpg文件修改为s**_abnor.jpg

    文章涉及到StringAbout::开头的函数具体实现参考:string与Cstring字符串类型转换和其他操作总结 CProcessFile::开头的函数实现参考:文件读写操作工具类CProcess ...

  5. Linux批量替换sh脚本中\r 符号

    一.脚本中出现\r的原因 该脚本在window上编辑过,widnow 上文件换行是 \r\n 而 linux上是 \n.     在Windows下换行的"\r"到了Linux环境 ...

  6. Photoshop批量替换PSD文件中的文字并转成JPEG图片

    在处理一些图片内容相同,文字内容不一样的时候.Photoshop有批量处理的方法,可以免去人工粘贴复制的麻烦. 1. 设计好需要替换文字的PSD 2. Photoshop程序:图像->变量-&g ...

  7. linux目录下所有文件内容替换,linux替换目录下所有文件中的某字符串

    比如,要将目录/modules下面所有文件中的zhangsan都修改成lisi,这样做: sed -i "s/zhangsan/lisi/g" `grep zhangsan -rl ...

  8. linux替换大文件内容,Linux批量替换文件内容

    今天测试人员一不小心把导航的地址改错了,大约6000多个导航文件,要通过后台配置的话也很麻烦,可以通过linux命令实现对批量文件进行内容替换,但是技术经理不在,我对linux命令不熟,没办法只好硬着 ...

  9. linux批量替换文件内容

    一.linux批量替换文件内容 : sed -i "s/旧内容/新内容/g" `grep 旧内容 -rl 文件夹路径` 例如将/var/www/test文件夹下的所有文件内容中的a ...

最新文章

  1. 【译】JavaScript中的Callbacks
  2. 最新版本的Silverlight Tools For Silverlight 2 RTW正式版
  3. 安全数据科学家的日常:需要做什么?将面对哪些挑战?
  4. Codeforces Round #617 (Div. 3) String Coloring(E1.E2)
  5. 面试稳了!网易资深工程师详解运维面经!
  6. mybatis(二)
  7. [Bzoj1143][CTSC2008]祭祀river
  8. 【CSS 基础教程】
  9. 技术支持团队应该是一个斜杠的团队
  10. 2018-7月最新QQ坦白说破解方法(亲测有效!)
  11. 【PTA 6-10】输入多个单词,统计以指定字母开头的单词个数
  12. 【爬虫实战】01利用python爬虫并进行数据分析(链家 爬虫)
  13. 电瓶车行驶过程中突然无动力,加速没反应,怎么办?
  14. 软件项目管理---项目范围管理
  15. Android源码中的目录结构详解
  16. 他博士毕业论文写了1255页,28岁评教授,38岁当院士!
  17. windows设置有线访问内网,无线访问外网
  18. matlab eval函数用法
  19. 跻身四强 | 坤前强势入围IDC加速计算服务器榜单
  20. 安卓生成keystore和查看keystore

热门文章

  1. AI端部署“三问”:模型如何跑起来、跑得快、持续跑
  2. 总奖池31万!智能零售柜商品识别,“信也科技杯”算法大赛启动
  3. 腾讯开源国内首个H.266/VVC视频播放器
  4. 韩松、朱俊彦等人提出GAN压缩法:算力消耗不到1/9,现已开源
  5. 图像检索新方向,阿里提出区域检索算法|CVPR 2020
  6. 语义分割最新指南2019版
  7. java方法第一次执行比较慢,为什么第一次在Java中调用方法时会出现运行时开销?...
  8. 5000字 大数据时代读书笔记_大数据时代 读书笔记
  9. CVPR2021论文集锦 | CVPR2021最新论文 | CVPR2021审稿结果 | CVPR2021录取结果
  10. 霸榜 | 微软CV模型收获近 2k star