求批处理,文件自动移动到文件名前几个字符命名的文件夹

如000101.txt,000102.txt……000199.txt
050888.txt,050835.txt……
分别存入0001,0508文件夹

@echo off&setlocal enabledelayedexpansion
for /f "delims=" %%a in ('dir /a-d /b') do (
set "folder=%%~a"
set "folder=!folder:~0,4!"
if not exist !folder! mkdir !folder!
move "%%~a" "!folder\!"
)
pause

将当前文件夹下文件自动移动到以文件前四个字符命名的子文件夹

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2016-09-19

那些文件夹存在吗?我当存在吧

@echo off&setlocal EnableDelayedExpansion
for /f "delims=" %%a in ('dir /a-d/b *.txt') do (
set f=%%~a
move "!f!" "!f:~,4!\"
)
pause

放在那些txt文件一起,那些文件夹也必须在那里。

本回答被提问者采纳
相似回答