Datei auf Änderung überprüfen

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
xris
Beiträge: 75
Registriert: 11.11.2003 14:40:36
Wohnort: Antibes (Frankreich)
Kontaktdaten:

Datei auf Änderung überprüfen

Beitrag von xris » 07.08.2007 09:36:35

Hallo zusammen,

folgendes Problem: Ich warte auf eine Bekanntgabe von Informationen in einem PDF, das unter der URL xyz liegt. Wenn die Infos da sind, dann wird das PDF auf dem Server einfach bearbeitet. Daher will ich folgendes machen:

Einen Cronjob schreiben, der jede Minute das PDF runterlädt und mit der aktuellen Checksumme vergleicht.

Folgendes ist mein Plan:

vorab einmal das PDF runterladen und per md5sum x.pdf >> md5summe.dat abspeichern

1.) Download des PDFs mit wget
2.) gegencheck mit der md5summe.dat, also: md5sum --check md5summe.dat

Wenn nun das Dokument sich geändert hat, dann meldet das md5sum. Die Ausgabe auf stdout beinhaltet z.B. das Wort "Warnung".

Wie kann ich nun aus der Ausgabe von md5sum das "Warnung" rauslesen, also checken, ob Warnung drin vorkommt? Wenn ich das machen könnte könnte ich einfach das PDF anzeigen lassen um mich drauf aufmerksam zu machen.

Danke für Tipps,

chris

Benutzeravatar
AK-Palme
Beiträge: 411
Registriert: 25.05.2004 15:38:30
Kontaktdaten:

Beitrag von AK-Palme » 07.08.2007 09:46:48

Vielleicht brauchst du das Ding nicht immer runterladen, wenn der Server ein vernünftigen HTTP-Modified-Header liefert...

Code: Alles auswählen

wget -S --spider http://www.google.de 2>&1 | grep -E '^\W*Date' | sed 's/^\W*Date: //' | md5sum | awk '{ print $1 }' 
würde einen Hash liefern. Kannst aber auch einfach

Code: Alles auswählen

wget -S --spider http://www.google.de 2>&1 | grep -E '^\W*Date' | sed 's/^\W*Date: //'
benutzen

xris
Beiträge: 75
Registriert: 11.11.2003 14:40:36
Wohnort: Antibes (Frankreich)
Kontaktdaten:

Danke

Beitrag von xris » 07.08.2007 10:13:20

Da sieht man mal wieder wie ich keine Ahnung vom Shellprogrammieren habe.

Vielen Dank für deine Antwort, gibt eine Menge Hinweise was ich mir mal anschauen sollte.

grüße, chris

Benutzeravatar
markus_b
Beiträge: 355
Registriert: 26.01.2006 04:57:18
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von markus_b » 07.08.2007 12:41:07

Man braucht dafür auch nicht einmal ein Shellskript, weil wget das auch alles selbst kann.
info wget hat geschrieben: `-N'
`--timestamping'
Turn on time-stamping. *Note Time-Stamping::, for details.
Mehr Info dazu im Info Manual oder auch hier.

Antworten