Batch move a folder's content up one level
Aqui está uma solução em lote em que o MoveFromDir é o diretório com o qual você inicia o conteúdo que você moverá e o MoveToDir é o caminho explícito do diretório. ser movido um nível acima do MoveFromDir, então você teria que configurar essas variáveis de acordo.
Mover todas as pastas e arquivos em MoveFromDir e abaixo para MoveToDir
Por favor note que executando apenas o segundo loop FOR de:
-
FOR /F "TOKENS=*" %%A IN ('DIR /S /B "%MoveFromDir%\*.jpg"')
Você pode especificar apenas as extensões de arquivo que deseja mover para o MoveToDir (por exemplo, jpg)
@ECHO ON
SET MoveToDir=C:\Photos\subject\randomnumbers
SET MoveFromDir=C:\Photos\subject\randomnumbers\images
:: Move the folders from the move directory to the move to directory
FOR /D %%A IN ("%MoveFromDir%\*") DO MOVE /Y "%%~A" "%MoveToDir%"
:: Move any remaining files (or folders) from the move directory to the move to directory
FOR /F "TOKENS=*" %%A IN ('DIR /S /B "%MoveFromDir%\*.*"') DO MOVE /Y "%%~A" "%MoveToDir%\"
GOTO EOF
Mais recursos