このチャプターの目次
無駄にいろいろ方法がありますので、一つ一つご紹介します。
for文
一つは for文の /R オプションです。例として、自分の %USERPROFILE%\bin に置いている、%USERPROFILE%以下のツリーにあるゴミファイルを片づけるバッチです。
cd %~dp0..
for /R %%I in (*.orig *~ svn-commit*.tmp .*.swp *.rej ) do (del /P "%%I")
最初の「%~dp0..」はバッチが置いてあるディレクトリの親ディレクトリを意味します。
forfiles.exe
最近の Windows では forfiles.exe という find 相当のコマンドも標準装備されています。
forfiles /S /M *.cpp /C "cmd /c echo @path"
こちらは一度に /M オプションで指定できるパターンは一つだけのですが、ファイル名の展開用マクロ(@path,@isdir)がいろいろ使えます。詳しい仕様は forfiles /? で確認できます。