bat脚本,怎么替换绝对路径下的文本内容。

ps:替换多个文本、同时保留文本特性(空格,空行)

@echo off & title 替换文件内容 By 依梦琴瑶

::设置路径
set DirPath=D:\Test

::设置源文件
set File=A.txt

::设置备份文件名
set Bak=B.txt

::设置替换前的字符
set Str=$$1

::设置替换后的字符
set Var=wwwww


::cd /d "%DirPath%"
copy "%File%" "%Bak%"

call :Replace "%File%" "%Str%" "%Var%"
pause
exit

:Replace
(echo Set FSO=Wscript.CreateObject("Scripting.FileSystemObject"^)
echo Set F=FSO.OpenTextFile("%~1"^)
echo S=Replace(F.ReadAll,"%~2", "%~3"^)
echo F.Close
echo Set R=FSO.OpenTextFile("%~1",2,True^)
echo R.Write S
echo Wscript.Quit)>Replace.vbs
Replace.vbs
del /f /q Replace.vbs
goto :eof

追问

非常感谢,试了一下确实可以。
请问一下,这个可以指定不同路径、不同文本、不同的替换内容吗。最好能直接覆盖源文件,万分感谢。

ps:(简单点说就是指定多个路径,多个文本,和多个替换内容)替换后直接覆盖原文件

温馨提示:答案为网友推荐,仅供参考
相似回答