Pregunta Cómo eliminar recursivamente el directorio de la línea de comando en Windows?


¿Cuál es el equivalente de Windows de rm -r [directory-name]?


212


origen




Respuestas:


deltree si recuerdo mi DOS.


Parece que ha sido actualizado ... esto es lo que quieres:

RMDIR /S

Esto elimina el directorio C:\test, con indicaciones:

rmdir c:\test /s

Esto hace lo mismo, sin indicaciones:

rmdir c:\test /s /q

En cuanto a la parte sudo de su pregunta, si necesita más privilegios, primero puede abrir un nuevo intérprete de comandos como otra cuenta de usuario utilizando el runas comando, como este:

runas /user:Administrator cmd
rmdir c:\test /s /q

311



@FarmBoy, disculpas, parece que mis recuerdos van demasiado atrás. He actualizado la respuesta para Windows XP y más reciente. - Colin Pickard
sí deltree es un viejo comando de DOS Fue eliminado en XP y reemplazado por rmdir /s - heavyd
¿Qué significa la bandera / s? - Mike R
Por alguna razón, hay un problema si haces esto en Powershell. Entonces solo use la línea de comando de Windows. - Devid
@MikeR, podría significar "subdirectorios" o algo así. findstr tiene el mismo parámetro, lo que tiene más sentido en este caso, así que tal vez sean lo mismo para la consistencia. - Sam


Si desea eliminar una estructura larga y complicada de carpetas desde el símbolo del sistema que RmDir no tocará y ni siquiera el explorador puede mostrar, he encontrado que robocopy puede ser muy eficiente para eliminar la estructura. En el siguiente ejemplo, tenemos una estructura masiva dentro del administrador de la carpeta, la estructura es tan profunda que nada puede eliminarla. Creamos una nueva carpeta vacía llamada (curiosamente!) "Nueva carpeta". Luego usamos el comando robocopy, diciéndole que la carpeta de origen es "nueva carpeta" y que la carpeta de destino es "D: \ Administrador" con el parámetro / MIR, lo que significa que purgará todo lo que no esté en la carpeta de origen.

robocopy "D:\new folder" D:\Administrator /MIR

En este caso, las rutas de las carpetas eran tan largas que ni siquiera encajarían en la ventana del símbolo del sistema Screen Buffer, pero Robocopy recorrerá la estructura y eliminará cualquier archivo y carpeta "extra" (es decir, cualquier elemento que no esté en la nueva carpeta vacía, que es todo )


54



Esta es la única solución que funcionará cuando su ruta tenga más de 250 caracteres impares. - Calm Storm


Puede hacer lo siguiente en PowerShell, si está en Windows Vista +:

rm C:\path\to\delete -r -f[orce]

9



Windows 10 dice -f es ambiguo. Pero puedes correr rm -r -force <path> - BrunoLM


Para mí, lo que funciona es

del /s dir

Puedes añadir /q para deshabilitar la confirmación Nunca he logrado obtener rmdir trabajando (en XP)


4



Probablemente deberías dejar de usar XP, ya no es compatible ... - Eric Wilson
Para mí, esto elimina todos los archivos recursivamente, pero no está borrando los directorios ellos mismos - dirtampoco es removido - sergiol


Si tienes un camino realmente largo (como lo hice debido al error del programa java), incluso robocopy no puede hacerlo. Descendió durante aproximadamente 30 segundos en mi camino y luego se colgó.

Mi solución: si puede mover la ruta completa del problema de una carpeta a otra, entonces puede cortar recursiva y repetidamente algunas escaleras de directorio desde la parte superior.

Este lote juega pingpong entre los dos directorios leer y leer2 y corta 8 'bibliotecas' cada vez. Si su ruta contiene archivos, debe agregar más comandos para borrarlos.

recurdel.cmd
:loop
move c:\leer\libraries\libraries\libraries\libraries\libraries\libraries\libraries\libraries c:\leer2
rd /S /Q c:\leer\libraries
move c:\leer2\libraries\libraries\libraries\libraries\libraries\libraries\libraries\libraries c:\leer
rd /S /Q c:\leer2\libraries
GOTO loop

2





De CMD Simplemente ejecute RD / s C: \ path \ to \ delete Presiona Y al prompt

/ s asegura que todos los subdirectorios se eliminen también.

Referencia correr ayuda RD desde la linea de comando


2



Gracias por su respuesta, pero esta información ya estaba en la respuesta aceptada. (rd y rmdir son lo mismo.) Tal vez cabría como un comentario allí. - Ben N


Esto eliminará "mi carpeta" sin preguntar:

rd /s /q "C:\Users\gourav.g\AppData\Roaming\my folder"

0