Gå til innhold

Batch script, ukjent mappenavn


Anbefalte innlegg

Hei, har et script som skal se om virus definisjonsfiler er oppdatert. Men mappen med definisjonsfilene endrer hele tiden navn. Så jeg trenger et script som leter i definisjonsmappen etter nyeste mappe og at den har en dato < 3uker gammel.

 

Her er scriptet jeg har nå:

 

@ECHO OFF

:: Navnet på fil som det skal sjekkes mot. Kommer som ekstern parameter %1
SET F=%1
:: Hent dato/tid, i sekunder, fra fil F
FDATE /FF /Osecond# /If /A%f% /P"set ftime=" > temp.bat
call temp.bat

:: Hent dato/tid, i sekunder, av nåtid
FDATE /FF /Osecond# /P"set ctime=" > temp.bat
call temp.bat

:: Beregn differansen
FDATE /f#dif /a%ctime% /b%ftime% /P"set tdiff=">temp.bat
call temp.bat

:: Sjekk om differansen er mer enn 1814400 sekunder (3 uker)
Fdate /F#comp /a%tdiff% /b1814400  >nul

:: Hvis differansen er mer enn 1814400 sekunder så har vi et problem
if errorlevel 103 goto bad_time
:: ellers..
goto ok_time


:bad_time
:: Send mail til mottaker og fortell om problemet
blat - -t ***@***.** -f sk****@****.no -subject "Problemer med filoverforing fra Bluegarden til GAT" -body "En eller flere av filene er ikke oppdatert siste 48 timer. Sjekk om noe er galt."
goto endit


:ok_time
rem blat - -t ****@****.no -f bl*****@****.no -subject "Good time difference is %tdiff% seconds" -body "Sitt rett i stolen."
:endit

:: cleanup
set ctime=
set ftime=
set tdiff=
set f=
del temp.bat

 

 

Slik scriptet er nå, må jeg ha navnet på filen. Vet ikke hvordan jeg skal gå frem når jeg har et ukjent mappenavn.

 

Noen der ute med gode råd?

Endret av Venruki
Lenke til kommentar
Videoannonse
Annonse

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...