同じレベルのファイルとディレクトリを削除する標準のWindowsコマンドはありません。ファイルにはDEL
が使用されますが、ディレクトリにはRMDIR
/RD
が使用されます(ただし、ディレクトリ内にあるディレクトリ内のファイルは削除できます)。
RMDIR
/RD
はワイルドカードでは機能しませんので、FOR
ループを使用する必要があります。そうであるように、以下のコードはあなたの質問のディレクトリを削除するコマンドを表示します。削除があなたの望むことを行うと確信したら、ECHO
を削除してください。
@ECHO OFF
FOR /F "tokens=*" %%G IN ('DIR /B /AD /S "*(2)*"') DO (
ECHO RMDIR /S /Q "%%G"
)
ます。また...ワンライナーにこれを減らすことができ
FOR /F "tokens=*" %%G IN ('DIR /B /AD /S "*(2)*"') DO ECHO RMDIR /S /Q "%%G"
...そしてあなたは、シェルで直接それを実行したい場合(
.bat
ファイルからではなく) 、実行します。
FOR /F "tokens=*" %G IN ('DIR /B /AD /S "*(2)*"') DO ECHO RMDIR /S /Q "%G"
国旗の説明:
FOR
/F
:ディレクトリ
/S
ためのフィルタ:裸のフォーマット(それはFOR
で動作しますので、必要に応じて)
/AD
:ファイルセット
DIR
RMDIR