Tail direkt auf Websitedaten verwenden oder ist ein anderes Dienstprogramm erforderlich?

Tail direkt auf Websitedaten verwenden oder ist ein anderes Dienstprogramm erforderlich?

Ich plane, ein einzelnes Datenfeld aus der letzten Datenzeile einer Website zu extrahieren, um eine RRD-Datenbank zu füllen. Ich verwende Linux.

Die Website ist:http://www.ogimet.com/cgi-bin/getsynop?begin=201309250000&block=03895(es sind Wetterdaten des Flughafens).

Fragen: Kann ich verwenden, tailumdirektdie letzte Datenzeile von der Website lesen, oder muss ich die Daten mit einem anderen Dienstprogramm lesen und dann verwenden, tailum die letzte Zeile abzurufen? Ist awkdas beste Dienstprogramm zum Heraustrennen des n-ten Datenfelds aus dieser Zeile? (Ich kenne mich mit Perl nicht aus).

Danke, Nigel.

Antwort1

Sie möchten curldie stderr-Ausgabe von deaktivieren, die Netzwerkdaten anzeigt, und dann einfach eine Weiterleitung an tail:

$ url="http://www.ogimet.com/cgi-bin/getsynop?begin=201309250000&block=03895"
$ curl "$url" 2>/dev/null | tail -n 1
03895,2013,11,28,15,00,AAXX 28154 03895 41450 82702 10090 20076 40342 56014 70252 885// 333 86613=

Sie können das weglassen, 2>/dev/nullwenn Sie möchten – es spielt für keine Rolle tail, ist aber schöner anzusehen.

Antwort2

Nein, tail liest nicht aus dem Netzwerk, wget, curl oder snarf jedoch schon. Jedes dieser Programme kann die Remote-Datei herunterladen und speichern oder herunterladen und auf Standardausgabe drucken. Dann kommen tail und awk ins Spiel (was, wenn Sie wissen, dass es gut funktioniert).

verwandte Informationen