-+  Associazione
-+  Documenti
 |-  Modern Perl
 |-  Bibliografia
 |-  Articoli
 |-  Talk
 |-  Perlfunc
 |-  F.A.Q.
 |-  F.A.Q. iclp
-+  Eventi
-+  Community
-+  Blog
-+  Link
Corso di Perl



 


indietro

[31] Come posso realizzare tail -f in perl? tail

Per prima cosa provate

    seek(GWFILE, 0, 1);

L'istruzione seek(GWFILE, 0, 1) non modifica la posizione corrente, ma cancella la condizione di end-of-file sull'handle, in maniera tale che il prossimo <GWFILE> farà in modo che Perl provi di nuovo a leggere.

Se ciò non funziona (si basa su caratteristiche della vostra implementazione di stdio), allora vi serve più qualcosa del genere:

    for (;;) {
      for ($pos_curs = tell(GWFILE); <GWFILE>; $pos_curs = tell(GWFILE)) {
        # cerca qualcosa e mettilo da parte
      }
      # aspetta un po'
      seek(GWFILE, $curpos, 0);  # torniamo nel punto in cui eravamo
    }

Se ancora non funziona, guardate il modulo POSIX. POSIX definisce il metodo learerr(), che può rimuovere la condizione di end-of-file su un filehandle. Il metodo legge fino alla fine del file, chiama clearerr(), legge un altro po'. Insaponare, risciacquare, ripetere.

C'è inoltre un modulo File::Tail su CPAN.

vedi in inglese

AUTORE E COPYRIGHT

Copyright (c) 1997, 1998, 1999, 2000, 2001 Tom Christiansen e Nathan Torkington. Tutti i diritti riservati.

Questa documentazione è libera; puoi ridistribuirla e/o modificarla secondo gli stessi termini applicati al Perl.

Indipendentemente dalle modalitè di distribuzione, tutti gli esempi di codice in questo file sono rilasciati al pubblico dominio. Potete, e siete incoraggiati a farlo, utilizzare il presente codice o qualunque forma derivata da esso nei vostri programmi per divertimento o per profitto. Un semplice commento nel codice che dia riconoscimento alle FAQ sarebbe cortese ma non è obbligatorio.

D:
Progetti e documenti in rilievo
Corso di Perl Progetto pod2it
D:
La ML di Perl.it
mongers@perl.it è la lista ufficiale di Perl Mongers Italia per porre quesiti di tipo tecnico, per rimanere aggiornato su meeting, incontri, manifestazioni e novità su Perl.it.
Iscriviti!
D:
Annunci Google