windosの指定日付より前のファイルを削除する - Qiita
を参考に
c:\hoge\logs 以下にある *.log で99日以上古いファイルを再帰的に削除
forfiles /P "c:\hoge\logs" /D -99 /S /M "*.log" /C "cmd /c del @file"
- /P
- 起点とするディレクトリ
- /D
- 日付か日数を指定。 -1 は昨日のファイルを含む。 24時間前とかではなく昨日
- /S
- 再帰的
- /M
- マスク指定
- /C
- 実行するコマンド。 delはcmdの内蔵コマンドなので/cが被ってしまうのな
注意事項
/C のコマンドが実行される時のカレントディレクトリは そのファイルがあったフォルダになるので気を付ける。
echo @fileとかでパスが出ないからおかしいと思ったんだ