Voici un ptit batch que j'utilise pour virer les fichiers du mois passé.
ce batch est lancé toute les semaines :
@echo off
rem folder and file selection
set dossier=C:\docgen\*.*
rem periodicity current month -2
set /a mois=%date:~3,2%-2
rem periodicity current year
set /a annee=%date:~6,4%
rem test for the last year
if %mois% LSS 1 (set /a mois=12+%mois%
set /a annee=annee-1)
if %mois% LSS 10 set mois=0%mois%
rem filtre use . or / for the date separator (make a dir *.*)
set filtre=%mois%.%annee%
@echo %filtre%
set dossier1=dir /b /s %dossier%
set filtre1=findstr /l /c:"%filtre%"
for /f "tokens=*" %%c in ('%dossier1%') do (
set fichier=%%c
call :commande
)
goto :eof
:commande
for /f %%c in ('dir "%fichier%" ^|%filtre1%') do del %fichier%/Q