Como recursivamente excluir o diretório da linha de comando no windows?

218

Qual é o equivalente no Windows de rm -r [directory-name] ?

    
por Eric Wilson 23.08.2010 / 21:29

7 respostas

320

deltree se eu lembrar do meu DOS .

Parece que foi atualizado ... é isso que você quer:

RMDIR /S

Isso remove o diretório C:\test , com prompts:

rmdir c:\test /s

Isso faz o mesmo, sem prompts:

rmdir c:\test /s /q

Em relação à parte sudo da sua pergunta, se você precisar de mais privilégios, primeiro abra um novo shell como outra conta de usuário usando o comando runas , assim:

runas /user:Administrator cmd
rmdir c:\test /s /q
    
por 23.08.2010 / 21:30
54

Se você deseja excluir uma estrutura de pastas longa e complicada do prompt de comando que o RmDir não tocará e nem mesmo o Explorer pode exibir, descobri que o robocopy pode ser muito eficiente na remoção da estrutura. No exemplo abaixo, temos uma estrutura massiva dentro do administrador da pasta, a estrutura é tão profunda que nada pode removê-la. Criamos uma nova pasta vazia chamada (estranhamente!) "Nova pasta". Em seguida, usamos o comando robocopy, informando que a pasta de origem é "nova pasta" e a pasta de destino é "D: \ Administrator" com o parâmetro / MIR, o que significa que limpará tudo que não estiver na pasta de origem.

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

Nesse caso, os caminhos das pastas eram tão longos que nem caberiam na janela do prompt de comando Screen Buffer, mas o Robocopy percorrerá a estrutura e removerá quaisquer arquivos e pastas "extras" (ou seja, qualquer coisa que não esteja na nova pasta vazia, que é tudo).

    
por 10.08.2012 / 01:13
9

Você pode fazer o seguinte no PowerShell, se estiver no Windows Vista +:

rm C:\path\to\delete -r -f[orce]
    
por 22.08.2015 / 18:51
5

Para mim, o que funciona é

del /s dir

Você pode adicionar /q para desativar a confirmação. Eu nunca consegui obter rmdir trabalhando (no XP)

    
por 17.05.2014 / 09:42
2

Se você tem um caminho realmente muito longo, (como eu fiz por causa do erro do programa java), mesmo o robocopy não pode fazê-lo. Ele desceu por cerca de 30 segundos no meu caminho e depois desligou.

Minha solução: se você puder mover todo o caminho do problema de uma pasta para outra, poderá cortar recursivamente e repetidamente algumas escadas do diretório a partir do topo.

Este lote joga pingue-pongue entre os dois diretórios leer e leer2 e corta 8 'bibliotecas' cada vez. Se o seu caminho contiver arquivos, você terá que adicionar outros comandos para apagá-los.

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
    
por 05.03.2014 / 09:37
2

Do CMD Basta executar o RD / s C: \ path \ to \ delete Pressione Y para o prompt

/ s garante que todos os subdiretórios sejam excluídos também.

Referência Corre ajuda RD da linha de comando

    
por 22.01.2016 / 07:44
0

Isso excluirá "minha pasta" sem prompt:

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