如何写一个批处理文件 把指定的文件里的字符串替换成另一个字符串,然后保存

如题所述

第1个回答  2009-08-30
为保险起见,建议用VBS吧:

Dim strFile: strFile = "c:\1.txt"
Dim FSO: Set FSO = CreateObject("Scripting.FileSystemObject")
Dim objFile: Set objFile = FSO.OpenTextFile(strFile)
Dim strContent: strContent = objFile.Readall
objFile.Close

Dim objRegEx: Set objRegEx = CreateObject("VBScript.RegExp")
objRegEx.Global = True
objRegEx.IgnoreCase = True
objRegEx.Pattern = "aaa"
Dim objNewText: objNewText = objRegEx.Replace(strContent,"bbb")

Dim objTextFile: Set objTextFile = FSO.CreateTextFile("c:\2.txt")
objTextFile.Write objNewText
objTextFile.Close

Set FSO = Nothing

被替换字符是“aaa”,替换为“bbb”。源文件是c:\1.txt,输出是c:\2.txt,请实际更改。
第2个回答  2009-08-30
::把a.txt中的abc替换成123
@echo off&setlocal
set f="a.txt"
set src=abc
set dst=123

for /f "usebackq delims=" %%a in (%f%) do (
if not defined flag cd.>%f%&set flag=1
set v=%%a
setlocal enabledelayedexpansion
set v=!v:%src%=%dst%!
echo.!v!>>%f%
endlocal
)

pause
goto :eof本回答被提问者采纳
相似回答