2017-01-21 77 views
1

我想製作一個可以一次刪除多個目錄的批處理腳本。我搜索了網頁,但似乎只能找到刪除多個子目錄或文件的方法。到目前爲止,我可以做一個腳本,採用這種結構來刪除一個特定的文件夾:使用單個批處理文件刪除多個目錄

rmdir "C:\Users\%USERNAME%\AppData\Roaming\Microsoft\Windows\Cookies" /S /Q 

我又試圖方法多種不同的組合和序列申報的其他文件夾,但似乎沒有工作。首先,我嘗試將所有其他目錄放在一行中,然後是/ S/Q,然後將rmdir和/ S/Q放在每個新路徑的開始和結尾處,然後按回車將每個路徑放在新行中。我使用了錯誤的命令嗎?任何幫助表示讚賞。

回答

4
for %%a in ("dirname 1" "dirname2" "as many as you want") do rd /s /q "%%~a" 

應該做你想做的 - 將%% a依次設置爲每個[optional-quoted]參數。如果目錄名包含分隔符(如空格),則您必須使用引號必須

+0

謝謝,這種方法工作得非常好。 –

1

您可以只使用一個for循環遍歷目錄列表,按:

pax> for %d in (c:\dir1 c:\other\dir2) do echo %d 
c:\dir1 
c:\other\dir2 

你的具體情況,這將是一個類似於(在CMD文件):

for %%d in (c:\dir1 c:\other\dir2) do rmdir "%%~d" /s /q 
+0

感謝您的意見,這也起到了作用。我將把這個方法歸檔爲將來使用的替代方法。我想接受這兩個答案,但只能接受一個答案... –

相關問題