¿Cómo crear un archivo por lotes para eliminar subcarpetas y conservar archivos?

¿Cómo crear un archivo por lotes para eliminar subcarpetas y conservar archivos?

Tengo una carpeta en mi sistema Windows con el siguiente contenido:

c:\carpeta\carpeta1
c:\carpeta\carpeta2
c:\carpeta\carpeta3
c:\carpeta\carpeta4
c:\carpeta\carpeta5
c:\carpeta\carpeta6
c:\carpeta\A.bat
c:\carpeta\b.bat

Quiero ejecutar un archivo por lotes que solo deje

c:\carpeta\A.bat
c:\carpeta\b.bat

y elimina el resto. Es decir, elimine todas las subcarpetas, independientemente de si contienen archivos, y conserve sólo los archivos de "nivel superior".

¿Cómo puedo hacer esto?

Respuesta1

Navegue C:\foldery ejecute el siguiente comando:

for /f "delims=" %d in ('dir /ad /b') do @rd /q /s "%d"

Esto eliminará todos los subdirectorios C:\foldery dejará solo los archivos. Si desea usarlo en un archivo por lotes, use %% en lugar de %.

información relacionada