2008-11-17 26 views
5

Tengo una carpeta "FolderA" que contiene tres subcarpetas: foldera2 foldera1 y foldera3carpeta desconocida borrar dentro de un directorio utilizando archivos .BAT

necesito para escribir un archivo por lotes que reside dentro "FolderA". Debería eliminar todas las carpetas en "Carpeta A" como una actividad de limpieza. No sé los nombres de las carpetas. rmdir no admite comodines.

¿Alguien podría proporcionar una solución para este pequeño problema?

+0

Acabo de agregar las comillas dobles, para poder eliminar directorios con espacios en su nombre. – VonC

Respuesta

5

algo como:

for /f %%a in ('dir /ad /b') do (rmdir /S /Q "%%a") 
for /d %%a in (*) do (rmdir /S /Q "%%a") 

debe hacer el truco. La segunda forma permite alguna selección de comodines para directorios.

Para probar que fuera un guión, en una sesión DOS claro:

for /f %a in ('dir /ad /b') do (rmdir /S /Q "%a") 
for /d %a in (*) do (rmdir /S /Q "%a") 

Nota las comillas dobles, con el fin de ser capaz de eliminar directorios con espacios en ellos.

3

Desde la línea de comandos:

for /D %a in (*) do rd /S /Q %a 

En el lote de archivos/cmd:

for /D %%a in (*) do rd /S /Q %%a 
0

Cuando estás dentro FolderA, ejecute "rmdir/s/q."

Esto muestra un error en la línea de comandos de "archivo en uso ..."
Sin embargo, elimina el directorio dentro de él.

Cuestiones relacionadas