Qual è l'equivalente di Windows rm -r [directory-name]
?
Qual è l'equivalente di Windows rm -r [directory-name]
?
Risposte:
.deltree
se ricordo il mio DOS
Sembra che sia stato aggiornato ... questo è quello che vuoi:
Questo rimuove la directory C:\test
, con prompt:
rmdir c:\test /s
Questo fa lo stesso, senza istruzioni:
rmdir c:\test /s /q
Per quanto riguarda la parte sudo della tua domanda, se hai bisogno di più privilegi, puoi prima aprire una nuova shell come un altro account utente usando il runas
comando, in questo modo:
runas /user:Administrator cmd
rmdir c:\test /s /q
deltree
è un vecchio comando DOS. Fu rimosso in XP e sostituito darmdir /s
findstr
ha lo stesso parametro, il che ha più senso nel suo caso, quindi forse sono uguali per coerenza.
Se vuoi eliminare dal prompt dei comandi una struttura di cartelle lunga e complicata che RmDir non toccherà e nemmeno Explorer può visualizzare, ho scoperto che robocopy può essere molto efficiente nel rimuovere la struttura. Nell'esempio seguente abbiamo una struttura enorme all'interno dell'amministratore della cartella, la struttura è così profonda che nulla può rimuoverla. Creiamo una nuova cartella vuota chiamata (stranamente!) "Nuova cartella". Quindi utilizziamo il comando robocopy, dicendo che la cartella di origine è "nuova cartella" e la cartella di destinazione è "D: \ Administrator" con il parametro / MIR, il che significa che eliminerà tutto ciò che non è nella cartella di origine.
robocopy "D:\new folder" D:\Administrator /MIR
In questo caso i percorsi delle cartelle erano così lunghi da non rientrare nemmeno nella finestra del prompt dei comandi Screen Buffer, ma Robocopy attraverserà la struttura e rimuoverà tutti i file e le cartelle "extra" (ovvero qualsiasi cosa non nella nuova cartella vuota, che è tutto ).
In PowerShell puoi eseguire le seguenti operazioni, se utilizzi Windows Vista +:
rm C:\path\to\delete -r -f[orce]
-f
è ambiguo. Ma puoi corrererm -r -force <path>
Per me, ciò che funziona è
del /s dir
È possibile aggiungere /q
per disabilitare la conferma. Non sono mai riuscito a rmdir
lavorare (su XP)
dir
non viene rimosso.
Se hai un percorso davvero molto lungo, (come ho fatto a causa di un errore del programma Java), anche Robocopy non può farlo. Scese per circa 30 secondi sul mio cammino e poi rimase sospeso.
La mia soluzione: se riesci a spostare l'intero percorso del problema da una cartella all'altra, puoi tagliare ricorsivamente e ripetutamente alcune scale della directory dall'alto.
Questo batch gioca a pingpong tra le due directory leer e leer2 e taglia ogni volta 8 "librerie". Se il tuo percorso contiene file, devi aggiungere ulteriori comandi per cancellarli.
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
Da CMD Basta eseguire RD / s C: \ path \ to \ delete Premere Y al prompt
/ s garantisce che anche tutte le sottodirectory vengano eliminate.
Riferimento Esegui help RD dalla riga di comando
rd
e rmdir
sono uguali). Forse potrebbe andare bene come commento lì.
Questo eliminerà "la mia cartella" senza prompt:
rd /s /q "C:\Users\gourav.g\AppData\Roaming\my folder"