@echo weg
setlocal EnableExtensions EnableDelayedExpansion
Rem definieren Quell- und Bestimmungsortpositionen und archivieren Muster, um zu kopieren
SourceDir= c:\temp\EE26352923\source einstellen
DestDir= c:\temp\EE26352923\dest einstellen
MatchExts=*.trn *.bak einstellen
Rem erhalten heutiges Datum und umwandeln in julianisches s
für /F „tokens=2-4 delims=/“ %%A innen („%DATE%") einstellen TodaysDate=%%C%%A%%B en
Anruf: jdate TodaysJDate %TodaysDate%
Rem bewegen auf Quellverzeichnis, finden alle Akten, gewünschtes Muster zusammenzubringen
pushd „%SourceDir%“
für %%A (%MatchExts%) innen tun (
Rem erhalten Aktenänderungsdatum, Bekehrten zu julianischem
FileDate=%%~nA einstellen
Anruf: jdate FileJDate! FileDate: ~-12.8!
Rem berechnen Alter der Akte an den Tagen, wenn älter als 7 Tage auf Bestimmungsort bewegen
/A FileAge=%TodaysJDate%- einstellen! FileJDate!
wenn! FileAge! GTR 7 verschieben „%%~A“ „%DestDir%“
)
popd
Rem bewegen auf Bestimmungsortverzeichnis, finden alle Akten, gewünschtes Muster zusammenzubringen
pushd „%DestDir%“
für %%A (%MatchExts%) innen tun (
Rem erhalten Aktenänderungsdatum, Bekehrten zu julianischem
FileDate=%%~nA einstellen
Anruf: jdate FileJDate! FileDate: ~-12.8!
Rem berechnen Alter der Akte an den Tagen, wenn eine älter als 28 Tageslöschung vom Bestimmungsort
/A FileAge=%TodaysJDate%- einstellen! FileJDate!
wenn! FileAge! GTR 28 del „%%~fA“
)
popd
/b herausnehmen
Rem-Subroutine, zum des julianischen Datums zu berechnen
: jdate zurückbringen-variable Datumschnur (YYYYMMDD)
DateStr=%~2 einstellen
yy=%DateStr einstellen: ~0.4%
/A mm=1%DateStr einstellen: ~4.2%-100
/A dd=1%DateStr einstellen: ~6.2%-100
/a „yy=10000%yy% %%10000, mm=100%mm% %% 100, dd=100%dd% %% 100“ einstellen
/a %~1=dd-32075+1461* (yy+4800+ (mm-14) /12) /4+367* (mm-2- (mm-14) /12*12) /12-3* einstellen ((yy+4900+ (mm-14) /12) /100) /4
/b herausnehmen
|