[linux] Re: If updated today - test
Paul Slootman
paul+nospam op wurtel.net
Wo Apr 18 15:50:30 CEST 2007
On Wed 18 Apr 2007, Peter Vollebregt wrote:
>
> Vraag: Ik wil een bash scriptje hebben dat een bepaald programma gaat
> draaien als de outputfile vandaag nog niet bijgewerkt is.
>
> Wat ik kan bedenken, als scripting-noob, is dat ik met mtime kan vragen
> of het vandaag bijgewerkt is. Het onderstaande commando geeft aan dat de
> file in de betreffende directory is bijgewerkt:
> find ~/.xmltv -mtime -1
>
> Als er iets gevonden wordt kan het update programma wat mij betreft
> draaien. Nu heb k het geprobeerd via && (als de eerste expressie waar is
> draai dan de tweede) als in:
> find ~/.xmltv -mtime -1 && programma
Dit is al in tegenspraak tot wat je eerder zegt: script draaien als de
file NIET minder dan 1 dag oud is. Alleen als er niks gevonden is,
zou het update programma moeten draaien, toch?
Probeer het eens zo:
if [ "`find ~/.xmltv -mtime -1`" = "" ]; then programma; fi
-daystart kan bij de find ook wel zinvol zijn.
> PS: Ter informatie. Het achterliggende probleem is dat ik dit programma
> liever via een cron of bij het booten van de computer wil draaien, maar
> wat ik ook probeer - het wil niet lukken totdat ik als user ben ingelogd.
Uit mijn crontab(5) manpage:
Instead of the first five fields, one of eight special strings may
appear:
string meaning
------ -------
@reboot Run once, at startup.
...
Paul Slootman
More information about the Linux
mailing list