如何批量将多个文件内容里的A和B的位置互换?
发布网友
发布时间:2022-04-19 13:27
我来回答
共2个回答
热心网友
时间:2023-07-08 18:42
不清楚你的实际文件/情况,仅以问题中的样例说明及为据;以下代码复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟要处理的文件放一起双击运行
<# :
cls
@echo off
rem 将多个txt文本文件内两个特征行中的部分字符串内容互换位置
set #=Any question&set @=WX&set $=Q&set/az=0x53b7e0b4
title %#% +%$%%$%/%@% %z%
cd /d "%~dp0"
powershell -NoProfile -ExecutionPolicy bypass "Invoke-Command -ScriptBlock ([ScriptBlock]::Create([IO.File]::ReadAllText('%~f0',[Text.Encoding]::GetEncoding('GB2312')))) -Args '%~f0'"
echo;%#% +%$%%$%/%@% %z%
pause
exit
#>
$ext=@('.txt');
$newfolder=".\result";
$self=get-item -liter $args[0];
$path=$self.Directory.FullName;
$newfolder=$newfolder -replace '^\.',$path;
if(-not (test-path -liter $newfolder)){[void](md $newfolder)};
$enc=[Text.Encoding]::GetEncoding('GB2312');
$files=@(dir -liter $path|?{($ext -contains $_.Extension) -and ($_ -is [System.IO.FileInfo])});
write-host $files[0].Name;
$text=[IO.File]::ReadAllText($files[0].FullName, $enc);
$sn=[regex]::match($text, '[^>]+(?=/SN)');
$imei=[regex]::match($text, '[^>]+(?=/IMEI)');
if($sn.Success -and $imei.Success){
$text=$text -replace '[^>]+(?=/SN)', $imei.groups[0].value;
$text=$text -replace '[^>]+(?=/IMEI)', $sn.groups[0].value;
};
$newfile=$newfolder+'\'+$files[0].Name;
[IO.File]::WriteAllText($newfile, $text, $enc);来自:求助得到的回答
热心网友
时间:2023-07-08 18:42
当然了,还可以使用 亿彩文件批量处理百宝箱V10.0的相应功能进行批量处理。