Algo que eu juntei rapidamente; não há tempo para testar extensivamente agora:
@echo off
for /f "delims=" %%d in ('dir /b/ad-s-h') do (
if exist "%%d\Files" (
pushd "%%d\Files"
if exist *.avi move *.avi ..
if exist *.mkv move *.mkv ..
if exist *.mp4 move *.mp4 ..
popd
rd "%%d\Files"
)
)
Se você executá-lo em C: \, ele examinará cada pasta de nível superior da unidade e, se ela contiver uma subpasta Arquivos , moverá qualquer AVI / MKV / MP4 arquivos encontrados em um nível (ou seja, na pasta de nível superior) e, em seguida, exclua a subpasta Arquivos .
Se algum outro arquivo existir em Arquivos , a pasta não será excluída. Você pode usar rd /s /q
se quiser excluir forçadamente. Além disso, o movimento solicitará a você cada vez que sobrescreva duplicatas (se houver), o que pode ser feito automaticamente usando move /y
.