如何在Windows中的命令提示符下刪除特定目錄中的文件/子文件夾



Answers

rmdir是我所有時間最喜歡的工作命令。 它適用於刪除包含子文件夾的大型文件和文件夾。 沒有創建備份,因此在運行此命令之前,請確保您已安全地複制了您的文件。

RMDIR "FOLDERNAME" /S /Q

這將悄悄地刪除該文件夾以及所有文件和子文件夾。

Question

說,有一個名為%pathtofolder%的變量,因為它表明它是一個文件夾的完整路徑。

我想刪除此目錄中的每個文件和子文件夾,但不是目錄本身。

但是,可能會出現“此文件/文件夾已在使用中”之類的錯誤...發生這種情況時,應該繼續並跳過該文件/文件夾。

任何人都可以為我提供一些指令嗎?




這將刪除文件夾和文件,並將文件夾留在後面。

pushd "%pathtofolder%" && (rd /s /q "%pathtofolder%" 2>nul & popd)



CD [Your_Folder]
RMDIR /S /Q .

您將收到一條錯誤消息,告訴您RMDIR命令無法訪問當前文件夾,因此無法刪除它。

更新

this有用的評論(感謝Moritz Both ),你可以在&&之間添加&& ,所以如果CD命令失敗, RMDIR將不會運行(例如輸入錯誤的目錄名稱):

CD [Your_Folder] && RMDIR /S /Q .

Windows命令行參考

/ S:刪除目錄樹(​​指定的目錄及其所有子目錄,包括所有文件)。

/ Q:指定安靜模式。 刪除目錄樹時不提示確認。 (請注意,只有在指定/ s時,/ q才起作用。)




我使用Powershell

Remove-Item c:\scripts\* -recurse

它將刪除文件夾的內容,而不是文件夾本身。




您可以使用以下命令刪除所有內容和父文件夾本身:

RMDIR [/S] [/Q] [drive:]path            



@ECHO OFF
rem next line removes all files in temp folder
DEL /A /F /Q /S "%temp%\*.*"
rem next line cleans up the folder's content
FOR /D %%p IN ("%temp%\*.*") DO RD "%%p" /S /Q



Links