不清楚你的實際文件/情況,僅以問題中的樣例/說明為據;以下代碼復制粘貼到記事本,另存為xx.bat,編碼選ANSI,跟要處理的文件放一起雙擊運行
<# :
cls&echo off&mode con lines=5000
rem 根據文件名稱中的中文名字,將對應文件剪切/移動到以該中文名字命名的文件夾里
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
#>
[byte[]]$b=@(32,45,45,62,32);
$c=[Text.Encoding]::Default.GetString($b);
$self=get-item -liter $args[0];
$path=$self.Directory.FullName;
$files=@(dir -liter $path|?{($self.Name -ne $_.Name) -and ($_ -is [System.IO.FileInfo])});
for($i=0;$i -lt $files.length;$i++){
$m=[regex]::match($files[$i].BaseName, '[\u4e00-\u9fa5]+');
if($m.Success){
$newfolder=$path+'\'+$m.groups[0].value;
if(-not (test-path -liter $newfolder)){[void][IO.Directory]::CreateDirectory($newfolder)};
$files[$i].Name+$c+$m.groups[0].value;
}
}
『貳』 如何把bat文件的輸出結果放到txt文件中
1、首先在電腦中,新建一個txt的文件,編寫一點小程序。