bat 批量替换很多文件夹下的xml文件的内容?
发布网友
发布时间:2022-05-30 03:58
我来回答
共1个回答
热心网友
时间:2022-05-30 05:27
不清楚你的实际文件/情况,仅以问题中的样例说明及猜测为据;以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟要处理的文件或文件夹放一起双击运行<# :
cls&echo off&cd /d "%~dp0"
rem 将当前目录下的所有xml文件里的一个指定字符串内容替换成其他指定字符串内容
set #=Any question&set _=WX&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$%/%_% %z%
set "current=%cd%"
powershell -NoProfile -ExecutionPolicy bypass "Get-Content -literal '%~f0'|Out-String|Invoke-Expression"
echo;%#% +%$%%$%/%_% %z%
pause
exit
#>
$current=$env:current;
$enc=New-Object System.Text.UTF8Encoding $False;
$files=@(dir -literal $current -recurse|?{('.xml' -eq $_.Extension) -and ($_ -is [System.IO.FileInfo])});
if($files.length -ge 1){
write-host $files[0].FullName.replace($current, '');
$text=[IO.File]::ReadAllText($files[0].FullName, $enc);
$text=$text.replace('FFFFFF', '363636');
[IO.File]::WriteAllText($files[0].FullName, $text, $enc);
}