在網上找了很久,想用 CMD/BAT 批處理的方式,來進行文件的字符串搜索替換工作。
看了,試了,一大堆。不是有問題,就是有瑕疵。不能完美解決問題。
只好自己想,自己做了。
我給出的方案,完美解決問題。而且簡單。簡單的不能再簡單了。
@echo off
setlocal EnableDelayedExpansion
set "CurrCD=%~dp0"
set "strOld=aaaaa"
set "strNew=zzzzz"
:: 將當前目錄(包括子目錄)下的所有 TXT 文本中的 aaaaa 替換爲 zzzzz
for /f %%i in ('dir /b /s /a:-d *.txt') do (
powershell -Command "(gc %%i) -replace '%strOld%', '%strNew%' | Out-File %%i"
)