2009-05-25 10 views
17

Necesito escribir un archivo por lotes que recibió un directorio que contiene una gran cantidad de subdirectorios vacíos y los elimina a todos.La forma más rápida de eliminar un árbol de directorios en el archivo por lotes

¿Cuál es la forma más rápida de hacer esto? (Por rápido que no decir, como lo hace el Explorador de Windows cuando intenta eliminar un directorio ...)

Aclaración:

No estoy tratando de eliminar sólo directorios vacíos. Da la casualidad de que este directorio que estoy tratando de eliminar es en su mayoría subdirectorios vacíos.

Respuesta

35
rd yourdirname /s/q 

Harán el trabajo independientemente de si están vacíos o no.

+0

Creo que el objetivo de eliminar los directorios _empty_ está a punto de _no_ eliminar los que no están vacíos :) – Joey

+0

@Johannes, no ese no era el punto en realidad. Editaré y aclararé –

5

No estoy seguro de haber entendido la pregunta. Si solo quiere eliminar el árbol, puede usar rd /s. Sin embargo, si solo desea eliminar directorios vacíos, puede hacer lo siguiente con Cygwin.

find -type d -empty | xargs rmdir 

La versión de TI estándar donde trabajo tiene instalado Cygwin, y lo he usado más de una vez.

+0

Si tiene instalado Cygwin, puede hacer "rm -rf dirname" – HED

+0

Eso borrará * todos * los directorios, no solo los vacíos. –

Cuestiones relacionadas