Tout au long depuis le début de la série Awk jusqu’à la partie 12, nous avons écrit des petites commandes et des programmes Awk sur la ligne de commande et dans les scripts shell respectivement.

Cependant, Awk, tout comme Shell, est aussi un langage interprété, donc, avec tout ce que nous avons parcouru depuis le début de cette série, vous pouvez maintenant écrire des scripts exécutables Awk.

Similaire à la façon dont nous écrivons un script shell, les scripts Awk commencent par la ligne :

#! /path/to/awk/utility -f 

Par exemple sur mon système, l’utilitaire Awk est situé dans /usr/bin/awk, par conséquent, je commencerais un script Awk comme suit :

#! /usr/bin/awk -f 

Expliquant la ligne ci-dessus :

  1. #! – appelée Shebang, qui spécifie un interpréteur pour les instructions d’un script
  2. /usr/bin/awk – est l’interpréteur
  3. -f – option d’interpréteur, utilisée pour lire un fichier programme

Cela dit, plongeons maintenant dans l’examen de quelques exemples de scripts exécutables Awk, nous pouvons commencer par le script simple ci-dessous. Utilisez votre éditeur préféré pour ouvrir un nouveau fichier comme suit :

$ vi script.awk

Et collez le code ci-dessous dans le fichier :

#!/usr/bin/awk -f BEGIN { printf "%s\n","Writing my first Awk executable script!" }

Enregistrez le fichier et quittez, puis rendez le script exécutable en émettant la commande ci-dessous :

$ chmod +x script.awk

Après quoi, exécutez-le :

$ ./script.awk
Sample Output
Writing my first Awk executable script!

Un programmeur critique doit se demander :  » où sont les commentaires ? », oui, vous pouvez également inclure des commentaires dans votre script Awk. Écrire des commentaires dans votre code est toujours une bonne pratique de programmation.

Il aide les autres programmeurs qui regardent votre code à comprendre ce que vous essayez d’atteindre dans chaque section d’un script ou d’un fichier de programme.

Par conséquent, vous pouvez inclure des commentaires dans le script ci-dessus comme suit.

#!/usr/bin/awk -f #This is how to write a comment in Awk#using the BEGIN special pattern to print a sentence BEGIN { printf "%s\n","Writing my first Awk executable script!" }

Après, nous allons regarder un exemple où nous lisons l’entrée d’un fichier. Nous voulons rechercher un utilisateur système nommé aaronkilik dans le fichier des comptes, /etc/passwd, puis imprimer le nom d’utilisateur, l’ID utilisateur et le GID utilisateur comme suit :

Voici le contenu de notre script appelé second.awk.

#! /usr/bin/awk -f #use BEGIN sepecial character to set FS built-in variableBEGIN { FS=":" }#search for username: aaronkilik and print account details /aaronkilik/ { print "Username :",$1,"User ID :",$3,"User GID :",$4 }

Enregistrez le fichier et quittez, rendez le script exécutable et exécutez-le comme ci-dessous :

$ chmod +x second.awk$ ./second.awk /etc/passwd
Sample Output
Username : aaronkilik User ID : 1000 User GID : 1000

Dans le dernier exemple ci-dessous, nous utiliserons l’instruction do while pour imprimer les nombres de 0 à 10 :

Voici le contenu de notre script appelé do.awk.

#! /usr/bin/awk -f #printing from 0-10 using a do while statement #do while statement BEGIN {#initialize a counterx=0do { print x; x+=1;}while(x<=10)}

Après avoir enregistré le fichier, rendez le script exécutable comme nous l’avons fait précédemment. Ensuite, exécutez-le :

$ chmod +x do.awk$ ./do.awk
Sample Output
012345678910

Summary

Nous sommes arrivés à la fin de cette intéressante série Awk, j’espère que vous avez beaucoup appris de l’ensemble des 13 parties, comme une introduction au langage de programmation Awk.

Comme je l’ai mentionné dès le début, Awk est un langage de traitement de texte complet, pour cette raison, vous pouvez apprendre plus d’autres aspects du langage de programmation Awk tels que les variables d’environnement, les tableaux, les fonctions (intégrées & définies par l’utilisateur) et au-delà.

Il y a encore d’autres parties de la programmation Awk à apprendre et à maîtriser, donc, ci-dessous, j’ai fourni quelques liens vers des ressources en ligne importantes que vous pouvez utiliser pour étendre vos compétences en programmation Awk, ce ne sont pas nécessairement tout ce dont vous avez besoin, vous pouvez également rechercher des livres de programmation Awk utiles.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *