• Publicidad

Leer un archivo externo

¿Apenas comienzas con Perl? En este foro podrás encontrar y hacer preguntas básicas de Perl con respuestas aptas a tu nivel.

Leer un archivo externo

Notapor angelltroa » 2011-05-16 17:40 @778

¡ Hola de nuevo !

Tenía una pregunta para vosotros. El caso es quiero hacer un open() para leer (parsear) un archivo externo que tengo en una URL (http://www.mysite.com/file.txt), tal y como lo haríamos en local, tipo:

open FILE, file.txt

¿Hay alguna forma de hacer esto en Perl sin usar pm externos? Es para un check de Nagios y tiene que ser un script muy portátil sin tener que importar muchas cosas.

¡ Muchas gracias de nuevo !
angelltroa
Perlero nuevo
Perlero nuevo
 
Mensajes: 9
Registrado: 2010-04-14 06:11 @299

Publicidad

Re: Leer un archivo externo

Notapor explorer » 2011-05-16 17:45 @781

JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España

Re: Leer un archivo externo

Notapor angelltroa » 2011-05-19 13:10 @590

Correcto, el problema que tengo es que cuando tengo el fichero no se como tratarlo, por ejemplo:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. #!/usr/bin/perl
  2. use strict;
  3. use warnings;
  4. use diagnostics;
  5. use LWP::Simple;
  6. my $file = get("http://www.osha.gov/dep/fatcat/fatalities.csv");
  7. print $file;
  8.  
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4


Ahora he volcado toda la información en la variable, pero no sé cómo tratarla y partirla en líneas como haríamos normalmente en:
while (my $line = <$DATA>){

¿Algún consejo? ¡Muchas gracias por vuestro tiempo!
angelltroa
Perlero nuevo
Perlero nuevo
 
Mensajes: 9
Registrado: 2010-04-14 06:11 @299

Re: Leer un archivo externo

Notapor explorer » 2011-05-19 13:43 @613

Pues fácil... si quieres dividir en líneas, se hace:

Sintáxis: [ Descargar ] [ Ocultar ]
Using perl Syntax Highlighting
  1. for my $linea (split /\n/, $file) {
  2.     ...;
  3. }
Coloreado en 0.001 segundos, usando GeSHi 1.0.8.4


Más información en perldoc -f split
JF^D Perl programming & Raku programming. Grupo en Telegram: https://t.me/Perl_ES
Avatar de Usuario
explorer
Administrador
Administrador
 
Mensajes: 14480
Registrado: 2005-07-24 18:12 @800
Ubicación: Valladolid, España


Volver a Básico

¿Quién está conectado?

Usuarios navegando por este Foro: Bing [Bot] y 18 invitados