2014-03-27 139 views
0

我有一個具有以下內容的文本文件替換文本文件中的行使用Windows批處理

status=y 

我需要使用Windows批處理腳本

將其更改爲

status=n 

我試過但我得到一個語法錯誤

setlocal enabledelayedexpansion 
set INTEXTFILE=status.txt 
set OUTTEXTFILE=t.txt 
set SEARCHTEXT='status=y' 
set REPLACETEXT='status=n' 
set OUTPUTLINE= 
for /f "tokens=1,* delims=" %%A in ('"type %INTEXTFILE%"') do (
SET string=%%A 
SET modified=!string:%SEARCHTEXT%=%REPLACETEXT%! 
echo !modified! >> %OUTTEXTFILE% 
) 
del %INTEXTFILE% 
rename %OUTTEXTFILE% %INTEXTFILE% 
+0

您可以發佈文本文件的樣本?你試過什麼了? –

+0

@Daemon我說我試過的代碼 – user2154424

+0

你可以發佈您試圖修改文本文件的樣本?如果我們知道什麼類型的內容是有的,爲什麼在你的代碼中使用單引號會更容易...... –

回答

0

對示例文件進行測試。

@echo off 
type status.txt|repl "status=y" "status=n" L >temp.tmp 
move temp.tmp status.txt >nul 

以上使用名爲repl.bat一個幫手批處理文件 - 下載來​​自:https://www.dropbox.com/s/qidqwztmetbvklt/repl.bat

repl.bat在同一文件夾中的批處理文件或者是道路上的一個文件夾中。