Rechercher : dans
Par :

[Perl] Afficher 1 numéro de ligne sur 100

Dernière réponse le 30 avr 2009 à 18:13:44 sbouli, le 30 avr 2009 à 17:04:37 
 Signaler ce message aux modérateurs

Bonjour,

Dans un script PERL, je lis un fichier, comme ce fichier est ENORME, je ne parviens pas à suivre l'évolution du process. Je souhaiterais donc afficher le numéro de la ligne en cours 1 fois sur 100 ou 1000, j'ai donc penser faire :

while (<FICHIER_LOG>) {
     ....
     if (($. % 100) == 0) print "$.\n";


soit écrit le numéro de ligne si ce dernier est divisible par 100. Cependant j'ai l'erreur :

syntax error at test.pl line 168, near ") print"
Execution of test.pl aborted due to compilation errors.

Une idée de la bévu ? (j'ai aussi essayé if (($. % 100) = 0) print "$.\n"; sans plus de succés ).

Stéphane

Meilleures réponses pour « [Perl] Afficher 1 numéro de ligne sur 100 » dans :
Sed - Numérotation de lignes VoirNumérotation Numéroter les lignes (équivalent à "cat -n fichier.txt") sed = fichier.txt L'inconvénient c'est que l'affichage se fait sur 2 lignes. Donc pour palier à ce petit "défaut" sed = fichier.txt | sed 'N;s/\n/\t/' Numéroter les...
Comment lire un fichier ligne par ligne VoirComment lire un fichier ligne par ligne Préambule Boucle while Syntaxe Exemple Astuces Bonus Boucle for Syntaxe Préambule Une des erreurs les plus communes dans l'apprentissage des scripts "bash" sous GNU/LInux pour lire un fichier...
Transformer des colonnes en lignes dans un fichier VoirDifférents outils de Linux sont très doués pour travailler avec des lignes, mais pas avec des colonnes (c'est leur rôle) Sed, Awk, Grep, etc. Cependant, il peut arriver pour X raisons que vous ayez un fichier où les données sont à lire en...
Perl - Les fichiers VoirLa notion de filehandle On appelle filehandle (traduisez descripteur de fichier), dans un programme Perl, le nom permettant de manipuler une connexion d'entrée-sortie (les entrées-sorties standards vues précédemment sont connues par les filehandles...
Perl - Entrée et sortie standards VoirQu'appelle-t-on entrée standard et sortie standard ? Perl permet d'écrire sur la sortie standard, appelée STDOUT et de lire sur l'entrée standard (STDIN). Il s'agit de deux descripteurs fournis par le système d'exploitation et permettant...

1

 fiddy, le 30 avr 2009 à 18:13:44
  • +1

Salut,
Il manque les accolades après ton if.
Sinon tu peux faire :

print "$.\n"  if (($. % 100) == 0);

Cdlt
Google is your friend

Répondre à fiddy
Collection CommentÇaMarche.net