保存为test.bat,脚本编码是ANSI.请先测试再使用. | @echo off | | cd /d "%~dp0" | | set "dir1=文件夹1" | | set "dir2=文件夹2" | | REM 前缀长度 | | set "prefix_length=3" | | | | md "%dir1%" 2>nul | | md "%dir2%" 2>nul | | powershell -c "gci -literal $env:dir1 -filter *.xls|where{$_ -is [IO.FileInfo]}|Move-Item -Destination {$baseName=$_.BaseName;$prefix=$baseName.Substring(0,[Math]::Min($baseName.Length,$env:prefix_length));$sdtm=$_.CreationTime.ToString('yyyyMMdd');$di=[IO.Directory]::CreateDirectory($env:dir2+'\'+$prefix+'\'+$sdtm);$di.FullName;} -Verbose;" | | pauseCOPY |
|