2011-10-19 43 views
3

起初,我知道這個問題可能存在,但一見鍾情,我沒有找到我正在尋找的答案。創建一個批處理文件來刪除特定的文件

我在創建批處理文件時遇到問題,該批處理文件應刪除具有作爲參數給定的特定文件格式的多個文件。應將這些文件所在的文件夾定義爲第一個參數。只讀,隱藏和系統文件也應該被刪除。

到目前爲止,我有這樣的事情:

CD %1 
IF EXIST *.%2 DEL *.%2 /F /A:H /A:S 

但這並不具有這樣的結果,應該有... 有人能幫助我嗎?

回答

5

......怎麼

CD /D %1 
DEL *.%2 /F /A:H /A:S 

/D由CD確保它也改變了當前驅動器。默認情況下,CD將始終保持在同一個驅動器中,無論您想要去哪裏。

然後,if exist是毫無意義的。如果沒有什麼要刪除,DEL不會刪除任何內容。

我不確定 *.%2是否真的是你想要的,因爲它只會匹配沒有特定擴展名的文件。你可能只想要 %2是的。

如果這不起作用,請告訴我們會發生什麼。你告訴我們期望的結果,即它應該刪除給定目錄中符合給定模式的文件。告訴我們會發生什麼事情。

+0

感謝您的回答。我使用'*。%2'方法的原因是因爲我打算刪除具有該特定文件模式的所有文件,但使用任何可能的文件名。這是使用它的錯誤方式嗎?我應該使用不同的符號嗎?如果我像那樣運行它,用%2作爲'bat',對於批處理文件,它表示它沒有找到名爲bat的文件。 (找不到C:\ batch-files \ bat) –

+0

那麼,在這種情況下,你是對的,用*。%2 –

+0

我很抱歉打擾你,但它仍然給出相同的結果(Can 't找到C:\ batch-files \ *。bat)不禁想着我正在做一些非常錯誤的事情...... –

相關問題