Trädvy Permalänk
Medlem
Registrerad
Mar 2003

Hjälp med bash-script

Hejsan, jag undrar lite över hur jag kan göra så att mitt bash-script kontrollerar hur gammal en fil är och om den är äldre än 12 h ska den hämtas igen.

Typ:

if (fil.html > 12h) wget http://server.ru/fil.html else echo "INGET!"

Trädvy Permalänk
Medlem
Registrerad
Aug 2005

Är det inte lättare att hämta den var 12:e timma från cron?

0 0-24/12 * * * wget http://server.ru/fil.html

Notera att den endast kommer att hämtas klockan 0 och 12 med denna rad...

Trädvy Permalänk
Medlem
Plats
Trollhättan
Registrerad
Feb 2002

Lite hjälp på vägen:

date +%s ger unixtime just nu.
stat -c%Y fil ger modifikationsdatum i unixtime
12h = 12*60*60 = 43200s

Stolt användare av en ibook 300 MHz (dasslocket)

Trädvy Permalänk
Medlem
Registrerad
Mar 2003
Citat:

Ursprungligen inskrivet av mickeus
Är det inte lättare att hämta den var 12:e timma från cron?

0 0-24/12 * * * wget http://server.ru/fil.html

Notera att den endast kommer att hämtas klockan 0 och 12 med denna rad...

Jo så hade man ju också kunnat göra, men detta var det sätt jag tänkte på först. Och ärligt talat så har jag haft problem med att försöka lägga till cron-job.

Citat:

Ursprungligen inskrivet av zypher_X
Lite hjälp på vägen:

date +%s ger unixtime just nu.
stat -c%Y fil ger modifikationsdatum i unixtime
12h = 12*60*60 = 43200s

Ok, såhär fick det bli;

nu=`date +%s` fil=`stat -c%Y fil.html` alder=`echo $nu-$fil|bc` if [ $alder -gt 43200 ] then wget http://server.ru/fil.html fi

Finns säkerligen vettigare och snyggare sätt att göra det men...

EDIT: BTW, tack för svaret zypher_X.

Trädvy Permalänk
Medlem
Plats
Malmö
Registrerad
Jul 2001

Troligtvis så kommer den bli äldre än 12h

Så ett cron-jobb som tar ner den varje dygn hade nog gjort sig bättre.

Trädvy Permalänk
Medlem
Registrerad
Mar 2003
Citat:

Ursprungligen inskrivet av maDa
Troligtvis så kommer den bli äldre än 12h

Så ett cron-jobb som tar ner den varje dygn hade nog gjort sig bättre.

Fast jag vill bara hämta den när det verkligen behövs. Den används bara när scriptet körs så det gör inget om den blir mer än 12 h gammal ibland. Så länge som scriptet uppdaterar den innan scriptet använder den är det ok.