@echo off rem 進入批處理文件所在的路徑 cd C:\Users\zxh\Desktop\123 echo ***** Replace "123" as "abc" ***** rem 定義要替換的新舊字符串 set strOld=123 set strNew=abc rem 定義變量修改本地化延期 setlocal enabledelayedexpansion rem 循環取出要處理的文件名 for /f "tokens=*" %%i in ('dir C:\Users\zxh\Desktop\123\*.txt /b /s') do ( set "var=%%i" if not !var!.==. ( rem 單個文件一行行處理,將舊字段替換成新字段 for /f "tokens=*" %%j in (!var!) do ( set "tmp=%%j" if not !tmp!.==. ( set "tmp=!tmp:%strOld%=%strNew%!" rem 將處理後的每一行記錄追加到temp.txt文件中 echo !tmp!>>temp.txt ) ) rem 在單個文件的每一行通過替換操做後,將處理後的文本從temp.txt臨時文件剪貼到目標處理文件中(剪貼後臨時文件會自動刪除) move temp.txt !var! ) ) pause