@echo fuori
EnableExtensions setlocal EnableDelayedExpansion
Il rem definisce le posizioni della destinazione e di fonte ed archiva i modelli per copiare
regolare SourceDir= c:\temp\EE26352923\source
regolare DestDir= c:\temp\EE26352923\dest
regolare MatchExts=*.trn *.bak
Il rem ottiene l'odierna data e converte in Julian
per /F “tokens=2-4 delims=/„ %%A da ("%DATE%") regolano TodaysDate=%%C%%A%%B
chiamata: jdate TodaysJDate %TodaysDate%
Il rem si muove verso l'indice di fonte, scopre che tutte le lime abbinano il modello voluto
pushd “%SourceDir%„
per %%A dentro (%MatchExts%) fare (
Il rem ottiene la data di modifica delle lime, convertito a Julian
regolare FileDate=%%~nA
chiamata: jdate FileJDate! FileDate: ~-12.8!
Il rem calcola l'età della lima in giorni, se i più vecchio di 7 giorni si muovono verso la destinazione
regolare /A FileAge=%TodaysJDate%-! FileJDate!
se! FileAge! 7 GTR spostano “%%~A„ “%DestDir%„
)
popd
Il rem si muove verso l'indice di destinazione, scopre che tutte le lime abbinano il modello voluto
pushd “%DestDir%„
per %%A dentro (%MatchExts%) fare (
Il rem ottiene la data di modifica delle lime, convertito a Julian
regolare FileDate=%%~nA
chiamata: jdate FileJDate! FileDate: ~-12.8!
Il rem calcola l'età della lima in giorni, se una cancellazione di più vecchio di 28 giorni dalla destinazione
regolare /A FileAge=%TodaysJDate%-! FileJDate!
se! FileAge! 28 del GTR “%%~fA„
)
popd
uscire /b
Sottoprogramma di rem per calcolare la data di Julian
: data-stringa rinviare-variabile del jdate (YYYYMMDD)
regolare DateStr=%~2
regolare yy=%DateStr: ~0.4%
regolare /A mm=1%DateStr: ~4.2%-100
regolare /A dd=1%DateStr: ~6.2%-100
regolare /a “yy=10000%yy% %%10000, mm=100%mm% %% 100, dd=100%dd% %% 100„
regolare /a %~1=dd-32075+1461* (yy+4800+ (mm-14) /12) /4+367* (mm-2- (mm-14) /12*12) /12-3* ((yy+4900+ (mm-14) /12) /100) di /4
uscire /b
|