指定した名前のディレクトリを再帰的に削除する Windows コマンド
SVN を使っていると .svn フォルダが大量にできてしまい、これを一括で消したいことがある。
Windows のコマンドプロンプトから操作するときは For コマンドと Rmdir コマンドを組み合わせることになるが、For コマンドの書き方がいつまで経っても覚えられないのでメモ。
For /r %d In (.svn) Do Rmdir /s /q "%d"
Forコマンドの/rオプションは、/r (パス)と書けば指定のパス配下、/rのみであればカレントディレクトリ配下のフォルダツリーを対象に操作する。
つまり、For /r %d In (.svn)で、カレントディレクトリ配下のフォルダツリー中に存在する「.svn」ディレクトリに対してループ操作を行える。Rmdirコマンドはワイルドカードが使えないのでForコマンドと組み合わせて操作する。途中に空白が入っていても操作できるようにダブルクォートで変数を"%d"と囲んでおく。/sオプションはフォルダ内のファイルも全て削除。/qオプションは削除時に確認メッセージを出さないようにする。
上のコマンドは以下のサイトを参考にしたが、For /d オプションでも書けるっぽい。もう覚えられないので無視。w