@關閉回聲
setlocal enabledelayedexpansion
設置目標="d:\tt\*。托格"
設置模式1=4
設置內容1=7701
設置模式2=-6
設置內容2=9912
for /r %target% %%a in (*) do(
設置計數=0
for /f "delims=" %%b in (%%a) do(
set /a count+=1
如果!數數!==%pattern1%(
echo % content 1% & gt;& gt臨時文本
)else if!數數!==%pattern2%(
echo % content2 % & gt& gt臨時文本
)else(
echo % % b & gt& gt臨時文本
)
)
move/y temp . txt " % % ~ DPA % % ~ na . tog " & gt;空
)
其中,%target%表示需要批量修改的目標文件,%pattern1%和%pattern2%分別表示需要修改的第四行和倒數第二行及其內容,%content1%和%content2%分別表示將要替換的內容。
該代碼使用了兩個循環:第壹個for循環用於遍歷所有。目標目錄中的tog文件;第二個for循環用於遍歷每個文件的所有行,並在需要修改的行上執行相應的操作。通過變量count,如果當前行需要修改,新內容輸出到臨時文件temp.txt否則,直接按原樣輸出當前行。最後,將臨時文件重命名為原始文件名,並完成修改。
請註意,這段代碼可能會將原始文件名中的所有大寫字母轉換為小寫字母。如果需要保持原文件名的大小寫,可以將move命令修改為:
move/y temp . txt " % % ~ DPA % % ~ na % % ~ xa " >空