題 如何從Windows中的命令行遞歸刪除目錄?


什麼是相當於的窗戶 rm -r [directory-name]


218
2017-08-23 19:29


起源




答案:


deltree 如果我記得我的DOS


它似乎已經更新......這就是你想要的:

RMDIR /S

這將刪除目錄 C:\test,提示:

rmdir c:\test /s

這樣做沒有提示:

rmdir c:\test /s /q

關於你的問題的sudo部分,如果你需要更多的權限,你可以先使用另一個用戶帳戶打開一個新的shell。 runas 命令,像這樣:

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

320
2017-08-23 19:30



@FarmBoy,道歉,似乎我的記憶遠遠落後了。我已經更新了Windows XP和更新版本的答案。 - Colin Pickard
是 deltree 是一個舊的DOS命令。它在XP中刪除並替換為 rmdir /s - heavyd
/ s標誌代表什麼? - Mike R
出於某種原因,如果您在Powershell中執行此操作會出現問題。所以只需使用Windows命令行。 - Devid
@MikeR,它可能代表“子目錄”或其他東西。 findstr 具有相同的參數,這更符合它的情況,所以也許它們的一致性是相同的。 - Sam


如果你想從命令提示符中刪除一個長而復雜的文件夾結構,RmDir將不會觸摸甚至瀏覽器都無法顯示,我發現robocopy可以非常有效地刪除結構。 在下面的示例中,我們在文件夾管理員中有一個龐大的結構,結構非常深,沒有任何東西可以刪除它。 我們創建一個新的空文件夾(奇怪的是!)“新文件夾”。 然後我們使用robocopy命令,告訴它源文件夾是“新文件夾”,目標文件夾是“D:\ Administrator”,帶有/ MIR參數,這意味著它將清除源文件夾中沒有的任何內容。

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

在這種情況下,文件夾路徑太長,甚至不適合命令提示符窗口屏幕緩衝區,但Robocopy將遍歷結構並刪除任何“額外”文件和文件夾(即任何不在新的空文件夾中,這是一切)。


54
2017-08-09 23:13



當你的路徑長度超過250個字符時,這是唯一可行的解​​決方案 - Calm Storm


如果您使用的是Windows Vista +,則可以在PowerShell中執行以下操作:

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

9
2017-08-22 16:51



Windows 10說 -f 很曖昧。但你可以跑 rm -r -force <path> - BrunoLM


對我來說,有效的是

del /s dir

你可以加 /q 禁用確認。我從未設法得到 rmdir 工作(在XP上)


5
2018-05-17 07:42



您應該停止使用XP,不再支持它... - Eric Wilson
對我來說,這會遞歸刪除所有文件,但不會刪除目錄本身 - dir也沒有刪除。 - sergiol


如果你有一個非常長的路徑,(就像我做的因為java程序錯誤),甚至robocopy也無法做到。它下降了大約30秒進入我的路徑,然後掛了。

我的解決方案:如果你可以將整個問題路徑從一個文件夾移動到另一個文件夾,那麼你可以從頂部反复切斷一些目錄樓梯。

這個Batch在兩個目錄leer和leer2之間播放乒乓,並刪除8個'庫' 每一次。如果路徑包含文件,則必須添加其他命令才能刪除它們。

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
2018-03-05 08:37





來自CMD 只需運行RD / s C:\ path \ to \ delete 按Y鍵提示

/ s確保也刪除所有子目錄。

參考 跑 幫助RD 從命令行


2
2018-01-22 06:44



感謝您的回答,但此信息已經在接受的答案中。 (rd 和 rmdir 是相同的。)也許它適合作為評論。 - Ben N


這將刪除“我的文件夾”而不提示:

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

0
2017-07-04 07:09