Perl en Español

  1. Home
  2. Tutoriales
  3. Foro
  4. Artículos
  5. Donativos
  6. Publicidad
 

Recorrer un fichero desde el final hacia atrás

 
Publicar nuevo tema   Responder al tema    Foros de discusión -> Intermedio
Mensaje Jue Nov 22, 2007 10:06 am
rfm
Perlero Nuevo
Perlero Nuevo
Registrado: 09 Nov 2007
Mensajes: 37
Recorrer un fichero desde el final hacia atrás Responder citando

Buenas tardes a todos.

Como bien dice el asunto, me gustaría saber si es posible recorrer un log desde el final hacia atrás, ya que los datos que me interesan están al final del fichero y dicho fichero tiene un millón de líneas y creciendo...

Un saludo y muchísimas gracias por vuestra labor.
Mensaje Jue Nov 22, 2007 10:56 am
explorer
Moderador
Moderador
Registrado: 24 Jul 2005
Mensajes: 4143
Ubicación: Valladolid, España
Responder citando

Prueba el módulo File::ReadBackwards y luego nos lo cuentas, por favor...
Mensaje Jue Nov 22, 2007 11:32 am
rfm
Perlero Nuevo
Perlero Nuevo
Registrado: 09 Nov 2007
Mensajes: 37
Recorrer un fichero desde el final hacia atrás Responder citando

Muchas gracias por tu respuesta explorer.

Como me comentabas antes, usando esta función podemos recorrer un fichero desde el final hacia atrás. En mi caso hasta que el campo fecha del log sea distinto de fecha actual.

Perl:
use File::ReadBackwards ;

    $bw = File::ReadBackwards->new( 'fichero_log' ) or die "no puedo leer fichero_log: $!";

    while( defined( $linea_log = $bw->readline )  &&  $log_line[columna_fecha] eq $fecha_actual) {
            print $log_line ;
    }


Esto imprime las líneas del fichero en orden inverso.

Un saludo
Publicar nuevo tema   Responder al tema    Foros de discusión -> Intermedio Todas las horas son GMT - 6 Horas
Página 1 de 1



Powered by phpBB © 2001, 2005 phpBB Group