Pour info awk traite les fichiers ligne à ligne. Nous avons vu qu'on peut conditionner les traitements effectués sur des lignes en faisant des trucs du genre :
Dans la section BEGIN, certaines variables ne sont pas settées, FILENAME en fait partie (ici je n'affiche que dans la section begin, je n'affiche pas le contenu du fichier ni la fin) :
LA section begin initialise l'index utilisé lors du parsing de chaque ligne du fichier. Cet index sera incrémenté à chaque fois qu'une ligne correspondra à la regexp. Puis à la fin, j'utilise une boucle for, qui aura comme compteur la variable j. Cette boucle va parcourir chaque tableau et afficher chaque valeur, jusqu'à ce que l'index j aura atteint la valeur de l'index i. Autrement dit c une façon de parcourir tout le tableau (mais il y en a d'autres).
[^] # Re: difficile ....
Posté par totof2000 . En réponse au message Script awk : Afficher le nom du fichier en cours de traitement ?. Évalué à 4. Dernière modification le 16 juillet 2019 à 20:25.
La deuxième méthode ...
Pour info awk traite les fichiers ligne à ligne. Nous avons vu qu'on peut conditionner les traitements effectués sur des lignes en faisant des trucs du genre :
On peut aussi effectuer certaines actions avant que la première ligne du fichier soit parsée et après que la dernière ligne du fichier ait éé parsée:
Exemple, nous allons afficher un texte avant de parser le fichier, afficher chaque ligne du fichier et afficher un texte après parsing :
Dans la section BEGIN, certaines variables ne sont pas settées, FILENAME en fait partie (ici je n'affiche que dans la section begin, je n'affiche pas le contenu du fichier ni la fin) :
Par contre dans la section END:
De plus, awk permet de setter des variables en cours de parsing. On peut utiliser des tableaux:
LA section begin initialise l'index utilisé lors du parsing de chaque ligne du fichier. Cet index sera incrémenté à chaque fois qu'une ligne correspondra à la regexp. Puis à la fin, j'utilise une boucle for, qui aura comme compteur la variable j. Cette boucle va parcourir chaque tableau et afficher chaque valeur, jusqu'à ce que l'index j aura atteint la valeur de l'index i. Autrement dit c une façon de parcourir tout le tableau (mais il y en a d'autres).