window下使用sed命令批量替换文件里的指定字符串
又要一波迁移Jenkins服务,遇到了头疼的事情,Jenkins下的所有项目的配置脚本都需要修改环境。乍一看,100个左右的项目,人肉改的话,岂不是人都要变傻。Jenkis上所有项目的配置其实都是文件存储的,基于我当时的服务器系统是window环境,配置文件在安装目录下的job的文件夹里的config.xml现在要将所有的config.xml里的这里的" 是一个双引号...
·
又要一波迁移Jenkins服务,遇到了头疼的事情,Jenkins下的所有项目的配置脚本都需要修改环境。乍一看,100个左右的项目,人肉改的话,岂不是人都要变傻。
Jenkis上所有项目的配置其实都是文件存储的,基于我当时的服务器系统是window环境,配置文件在安装目录下的job的文件夹里的config.xml
现在要将所有的config.xml里的
这里的" 是一个双引号
"C:\Program Files\360jiagubao_windows_64\jiagu\jiagu.jar"
修改成
%JAR_HOME%
注意坑:由于window 环境,路径写成反斜杠 ,反斜杠在sed命令里需要特殊处理。
sed命令
sed -i s#原字符串#需要被替换后的字符串#g
window循环目录
//答应路径下的所有的config.xml的文件名
//%i 这里是文件
for /r %i in (config.xml) do ( echo %i )
最终解决
(1)进入到Jenkins的job路径下
(2)cmd 窗口 执行以下命令(循环路径,找到对应的config.xml)
for /r %i in (config.xml) do ("D:\Git\usr\bin\sed.exe" -i "s#"C:\\\\Program Files\\\\360jiagubao_windows_64\\\\jiagu\\\\jiagu.jar"#%JAGU_JAR_HOME%#g" %i)
更多推荐
已为社区贡献4条内容
所有评论(0)