[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

[文件操作] 请教怎么用批处理把文件中特定的区间给替换掉?

本帖最后由 qqask 于 2021-1-24 22:51 编辑

比如说某个n.js内容是这样的:
mu->doe = ['( tr <br>
     tekt  ( tr uapp "(Finction rood (\;)<br>
     ord  ( a b c)<br>

  )<br>
]

  mu->Koe = ['( tr<br>
     tekt  ( tr uapp "(Finction rood (\;)..<br>
     ord  ( a b c)<br>

  )<br>
]

  mu->Yoe = ['( tr <br>
     tekt  ( tr uapp "(Finction rood (\;)<br>
     ord  ( a b c)<br>

  )<br>
]
想把mu->Koe = 这段方括号[]之间的内容替换成其他字符串,比如换成这样:
mu->doe = ['( tr <br>
     tekt  ( tr uapp "(Finction rood (\;)<br>
     ord  ( a b c)<br>

  )<br>
]

  mu->Koe = [778899]

  mu->Yoe = ['( tr <br>
     tekt  ( tr uapp "(Finction rood (\;)<br>
     ord  ( a b c)<br>

  )<br>
]
mu->Koe =这段所在文件的位置不一定,方括号里面的文字也不一样。一般采用正则表达式好些吧?

回复 2# Batcher
文件较多,且更新频繁,想弄个批处理文件一键处理完毕。
找了些能正则替换的软件,要不不支持批量正则替换,要不替换效果不是很好。

TOP

sed ":a;$!{N;ba};s/mu->Koe = \[.*\]/778899/g" n.js
这句话能实现一定的替换,但是一直替换到最后一个]号了,能不能终止在第一个]号?

TOP

谢谢各位。
flashercs的代码挺管用。
sed的简单些,纯批的好像有点复杂,但也是一种选择。

TOP

返回列表