2016-11-06 10 views
0

こんにちは!
ワイルドカードを使用して複数のファイルを削除する方法

私はバッチについて簡単な質問があります。
.gr2.ddsというファイルをすべて削除するスクリプトを作成する必要があります。

私はそのディレクトリになど fhfuif okjopjn のような名前の他の多くのディレクトリですれているディレクトリToDelete、 quzeudを、持っているが、私は削除する必要があり、それらのファイルです。私のスクリプトは動作しません。誰が問題がどこにあるか知っていますか?ありがとう!

コード:

del "ToDelete/*/*.gr2" 
del "ToDelete/*/*.dds" 

pause 
+1

「del /?」と入力します。 gr2/s' –

+0

'del/s" ToDelete \ *。gr2 "" ToDelete \ *。dds "' \ c。 – Stephan

答えて

0

ワイルドカードは唯一のパスの最後の要素で使用することができます。あなたは、削除したファイルの親ディレクトリをループするfor /Dループを使用することができます。

for /D %%D in ("ToDelete\*") do ( 
    del "%%~D\*.gr2" "%%~D\*.dds" 
) 

プロンプトを表示せず削除する/Qスイッチを追加します。

注:Windowsでは、/が問題を引き起こす可能性があるため、Windowsでは、パス区切り文字として\を使用してください。


あなたは内のファイルに任意のディレクトリの深さ、delの使用スイッチ/S削除したい場合:確認メッセージを表示せずに削除する/Qスイッチを追加

del /S "ToDelete\*.gr2" "ToDelete\*.dds" 

を。

関連する問題