bat替换文件中的字符串_在linux系统中批量替换多个文件中的指定内容

复制一个网站,网站静态页js文件中出现的"logo-title"后面的“深圳市",替换为“北京市”,其他地方的“深圳市”不用修改

使用grep 命令查找logo-title,查看文件中真实内容是什么样子的

 grep -or 'logo-title.................'

f2205704412a754a931c4b0040188385.png

命令中 . 是正则表达式,表示一个字符。再使用命令 列出包含有logo-title 的文件,命令:grep -rl 'logo-title  .'

8e0573b90e59ad7fc8265323c64b47ef.png使用sed命令在找出的文件中替换。

sed -ri 's/logo-title"},(.)\?"(深圳市)/logo-title"},\1\?"北京市/g' `grep -rl logo-title .`

命令解析: -r 表示支持正则表达式's///g' 表示替换字符串,s表示字符串,/// 三条/分成2部分,前面部分是旧字符串,后面部分是新字符串,即/old/new/旧字符串部分:logo-title"},(.)\?"(深圳市)  中 (.)又表示任意一个字符,括号表示分组。因为被替代的存在2种,需要都能兼容,logo-title"}, p?"深圳市logo-title"}, b?"深圳市新字符串部分:logo-title"},\1\?"北京市\1 表示去分组中的第一组,这个例子中第一组要么是p,要么是b,根据查找到的实际情况填写/g 表示全部替换`grep -rl logo-title .` 查找出的是包含有logo-title 的文件名,让sed去替换-r表示递归查找,即不管有多少层目录,都会去查找,-l 列出文件名

4da86723f5804258705ca3bdb1451d88.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值