Tableau simple en bash
Sommaire
I. Présentation
Dans ce tutoriel, nous allons apprendre à faire des tableaux simples dans le language de script bash. Nous verrons comment les initialiser puis comment les parcourirs.
II. Initialisation du tableau bash
Chaque case (ou valeur) présente dans un tableau sera initialisée de la façon suivante :
nom_tableau[Numéro]=valeur
Nous allons donc mettre la valeur "bonjour" dans la case numéro "0" (la première) du tableau "tab" de la façon suivante :
tab[0]="bonjour";
Nous pourrons, en continuant notre numérotation remplir peu à peu notre tableau :
tab[1]="Au revoir";
Note : les tableaux commencent par 0 en bash
III. Lecture simple
Pour lire les valeurs et les différentes cases d'un tableau, il nous faut faire de la même manière que pour une variable simple mais en spécifiant le numéro de la case voulue, comme suivant :
echo $tab[1];
Nous aurons alors en retour "Au revoir" qui est le contenu de la case 1 du tableau "tab".
IV. Parcours du tableau avec une boucle
Nous pouvons également parcourir et traiter tout le tableau avec un boucle for :
for mot in ${tab[*]} do echo $mot; done
Nous aurons alors ici le parcours et l'affichage de toute les cases du tableau une par une. Pour information, la boucle "for" permet de définir une limite jusqu’à laquelle la boucle va continuer de tourner. La limite que nous fixons est le parcours de toutes ("*") les cases du tableau nommé "tab". Le "mot" est ici une valeur libre. On peut y mettre ce que l'on souhaite mais il faut savoir que cette valeur représentera la variable contenant la valeur de la case lue à chaque tour de la boucle.
Un exemple d’output aurait été parfait, ainsi que quelques exemples plus fournis aussi 😉
Merci beaucoup pour ce tutoriel qui m’a été d’une grande utilité !
Par contre, il comporte un erreur si je ne dis pas de bêtises !
Pour la lecture simple d’un tableau, vous indiquez ceci : echo $tab[1];
Alors qu’il faudrait écrire echo ${tab[1]}; à la place.
bonjour,
je dois faire un script qui créér un fichier le nom et type de fichier et désigner sur linvité de commande
et apres faire un tableau dans le fichier avec des information donnée dans linvité de commande le probleme est pour inserer mon tableau dans le fichier.
Article plus que nul. Déjà en effet il faut écrire echo ${tab[1]} (et le point-virgule n’est pas nécessaire).
Toutefois peut-être qu’il serait bon d’indiquer comment créer un tableau d’un coup => tab=(« bonjour » « au revoir »), d’indiquer comment obtenir les indices (car sur une plage d’indices, on n’est pas obligé d’avoir systématiquement tous les indices affecté avec une valeur) => echo {!$tab[*]}.
Bref entre cet article et rien, il aurait mieux valu ne rien écrire, ça évitera à tous ceux qui cherchent des informations sur les tableaux en shell de venir perdre leur temps ici. Encore un néophyte qui se croit capable d’enseigner…