Estoy planeando extraer un único campo de datos de la última línea de datos de un sitio web para completar una base de datos RRD. Estoy ejecutando Linux.
El sitio web es:http://www.ogimet.com/cgi-bin/getsynop?begin=201309250000&block=03895(son datos meteorológicos del aeropuerto).
Preguntas: ¿puedo usar tail
paradirectamente¿Leer la última línea de datos del sitio web o necesito leer los datos usando otra utilidad y luego usarla tail
para obtener la última línea? ¿Cuál es awk
la mejor utilidad para separar el enésimo campo de datos de esa línea? (No estoy familiarizado con Perl).
Gracias. Nigel.
Respuesta1
Desea deshabilitar curl
la salida stderr de que muestra datos de red y luego simplemente canalizar a 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=
Puedes omitir el 2>/dev/null
si lo deseas; no importará tail
, pero es más agradable de ver.
Respuesta2
No, tail no leerá de la red, pero wget, curl o snarf sí. Cada uno de esos programas puede descargar y guardar el archivo remoto o descargarlo e imprimirlo de forma estándar. luego entran en juego tail y awk (que si sabes que funcionará bien).