- Use um para iterar o conteúdo da pasta
%%Acom um padrão que contenha menos um espaço. - Outro
for /fé necessário para dividir o nome%%Aem duas partes, uma antes o primeiro espaçotokens=1=%%Be o restantetokens *=%%C. - Se uma pasta com o nome
%%Bnão existir, crie-a - Mova o arquivo original
%%Apara a subpasta%%Bcom o nome%%C
:: Q:18\SU_1330475.cmd
@Echo off
PushD C:\folder
for %%A in ("* *.*") do for /f "tokens=1*" %%B in ("%%A") do (
If not exist "%%B" MD "%%B"
Move "%%A" "%%B\%%C"
)
PopD
> tree /f
C:.
│ SU_1330475.cmd
│
└───folder
├───HorseRiding2017
│ certificate.pdf
│ guests.txt
│ jumping.mov
│ spirit1.jpg
│
└───Wedding2018
entrance.mov
img20929.jpg
registry of guests.pdf