1
我正在嘗試讀取所有文件並將其替換爲子字符串。 當我執行批處理文件僅第一個命令執行 即SET modified=!string:%oldstr1%=%newstr1%!
無法修改bat文件中的多個字符串
其餘2個命令不執行
SET modified=!string:%oldstr2%=%newstr2%!
SET modified=!string:%oldstr3%=%newstr3%!
代碼如下
@echo off
setlocal enabledelayedexpansion
set LOCATION=D:\CODE_temp\RUNTIME_DATA\
set OUTTEXTFILE=test_out.txt
set oldstr1=workflow.actions
set newstr1=process.activities
set oldstr2=CallWorkflow
set newstr2=CallProcess
set oldstr3=SetWorkflowVariable
set newstr3=SetProcessVariable
FOR /r %LOCATION% %%x IN (*.txt) do (
FOR /f "tokens=1,* delims=¶" %%A in ('"type %%x"') do (
SET string=%%A
SET modified=!string:%oldstr1%=%newstr1%!
SET modified=!string:%oldstr2%=%newstr2%!
SET modified=!string:%oldstr3%=%newstr3%!
echo !modified! >> %OUTTEXTFILE%
)
del %%x
copy %OUTTEXTFILE% %%x
del %OUTTEXTFILE%
echo location %%x >> Enosh_log.txt
)
感謝我沒有得到這個想法:) – Enosh