Comment utiliser un tableau Bash dans un script: guide complet
Avr 22, 2026
/
Katerina B.
/
6minutes de lecture
Un tableau Bash est une structure du langage de programmation Bash qui vous permet de regrouper et d’indexer des éléments, qui peuvent être des chaînes de caractères ou des nombres. Cela vous aide à travailler plus efficacement avec de grandes quantités de données et à simplifier diverses tâches d’administration système UNIX, comme l’enregistrement des sorties de commandes.
Vous pouvez écrire des tableaux Bash de deux façons : indexés et associatifs. Alors que les tableaux indexés attribuent un numéro à un élément, leur équivalent associatif utilise des chaînes de caractères et nécessite la commande interne shell `declare` explicite. En dehors de cela, vous pouvez les écrire en utilisant la même syntaxe.
Lorsque vous utilisez des tableaux dans des scripts Bash, vous les modifiez souvent ou les faites passer par différentes opérations, telles que :
- Ajout d’une nouvelle variable à un tableau Bash existant
- Référencer et afficher un élément précis d’un tableau
- Supprimer un élément d’un tableau Bash
- Parcourir les éléments d’un tableau Bash
- Passer un tableau Bash à une fonction.
Approfondissons l’utilisation des tableaux Bash dans les scripts, leurs opérations et des exemples concrets de cas d’usage.
Qu’est-ce qu’un tableau Bash ?
Un tableau Bash est une structure de données conçue pour stocker des informations de manière indexée. En d’autres termes, un tableau Bash est un grand groupe de variables. Contrairement aux tableaux classiques utilisés dans d’autres langages de programmation, les tableaux peuvent stocker différents types d’éléments. Par exemple, vous pouvez utiliser un tableau bash pour stocker à la fois des chaînes de caractères et des nombres.
Notez que bash ne prend pas en charge les tableaux multidimensionnels. Il n’est donc pas possible d’ajouter un tableau dans un autre tableau.
Il existe deux types de tableaux bash : les tableaux indexés et les tableaux associatifs. Un tableau indexé est référencé par des entiers ou des nombres, ce qui aide à organiser des données de base. À l’inverse, un tableau associatif est indexé au moyen de chaînes de caractères ou d’un ensemble de caractères et de mots, ce qui le rend adapté au stockage de paires clé-valeur.
Outre la référence, la méthode d’écriture des tableaux indexés et associatifs diffère aussi légèrement.
Comment déclarer un tableau Bash ?
Déclarer un tableau Bash consiste essentiellement à créer l’index et à lui attribuer des éléments. Vous pouvez également déclarer explicitement un tableau en ajoutant la commande intégrée du shell `declare` avec l’option `-a` au début de votre script Bash, même si cela reste facultatif dans certains cas.
Par exemple, la déclaration d’un tableau indexé ne nécessite pas la commande interne du shell, mais elle est obligatoire si vous voulez déclarer un tableau associatif. En dehors de cette règle, vous pouvez aussi déclarer des tableaux en utilisant la même syntaxe, que nous expliquerons ensuite.
Aperçu de la syntaxe
La syntaxe de base d’un tableau Bash est la suivante :
#optional for indexed declare -a IndexedArray Array[subscript1]=element1 Array[subscript2]=element2 Array[subscript2]=element3
L’indice correspond à la référence de vos éléments de tableau : ce sont des nombres pour les tableaux indexés et des chaînes de caractères pour les tableaux associatifs. Voici un exemple de tableau Bash indexé réel :
#optional for indexed declare -a IndexedArray IndexedArray[0]=car IndexedArray[1]=plane IndexedArray[2]=bike
Pendant ce temps, un tableau associatif Bash ressemble à ceci :
declare -a IndexedArray AssociativeArray[color]=blue AssociativeArray[type]=car TableauAssociatif[vitessemax]=200
Vous pouvez également simplifier les tableaux en les écrivant sur une seule ligne à l’aide d’indices, comme dans ces exemples :
IndexedArray=([0]='car' [1]='plane' [2]='bike')
declare -A Associative Array=( [color]=blue [type]=car [topspeed]=200 )
Notez que le premier exemple met les éléments du tableau entre guillemets. C’est facultatif, mais cela devient nécessaire lorsque les éléments sont des chaînes séparées par des espaces ou une chaîne vide.
Pour les tableaux indexés en particulier, vous pouvez omettre l’indice lorsque vous les écrivez sur une seule ligne, car Bash attribue automatiquement le numéro selon un incrément fixe :
IndexedArray=(car plane bike)
N’oubliez pas que l’indexation commence à 0. Ainsi, dans l’exemple ci-dessus, l’élément car du tableau sera affecté à l’index 0.
Une autre fonctionnalité intéressante des tableaux Bash est qu’il n’est pas nécessaire de suivre les numéros d’index dans l’ordre. Par exemple, vous pouvez déclarer uniquement le premier et le troisième élément tout en laissant le deuxième élément d’un tableau vide :
IndexedArray[0]=car IndexedArray[2]=bike
Maintenant que nous savons comment déclarer un tableau, découvrons les différentes opérations de manipulation des tableaux en Bash.
Comment ajouter une variable à un tableau Bash ?
Ajouter des variables Bash consiste à insérer un nouvel élément dans votre tableau à l’aide de l’opérateur +=. La syntaxe se présente ainsi :
ArrayName+=(element-to-add)
Par exemple, voici comment ajouter un nouvel élément à un tableau indexé :
IndexedArray=(car plane bike) IndexedArray+=(motorcycle)
Le tableau indexé comporte désormais un nouvel élément. N’oubliez pas que cette méthode ajoute un élément à la fin d’un tableau. Par conséquent, l’élément motorcycle sera ajouté en dernière position.
Pour les tableaux associatifs, le processus est très similaire, sauf que vous devez spécifier les clés en plus de tous les éléments :
declare -A AssociativeArray AssociativeArray[color]=blue AssociativeArray+=([tires]=alloy [engine]=gasoline)
Ajouter une variable est une opération essentielle pour enrichir votre tableau Bash avec de nouvelles données. Il est couramment utilisé pour des tâches comme l’enregistrement des sorties de commande et la journalisation des événements sur votre système.
Utiliser l’opérateur Bash pour une autre tâche
En plus d’ajouter un nouvel élément à un tableau, l’opérateur += vous permet de concaténer des chaînes de caractères dans votre script Bash.
Comment référencer et afficher un élément d’un tableau Bash ?
Faire référence à un élément de tableau Bash et l’afficher vous permet de vérifier un élément associé à un index ou à une clé spécifique. Pour ce faire, créez un tableau indexé :
IndexedArray=(car plane bike)
Pour faire référence à la première variable du tableau, utilisez la syntaxe suivante :
${IndexedArray[0]}Combinez-la avec echo, et vous obtiendrez ce qui suit :
echo ${IndexedArray[0]}La sortie affichera le premier élément. Dans ce cas, c’est la voiture. La même logique s’applique lorsque vous faites référence à un tableau associatif et l’affichez :
declare -A AssociativeArray=( [color]=blue [type]=car [topspeed]=200 )
echo ${AssociativeArray[type]}La sortie sera également « car ».
Pour afficher l’ensemble du tableau, utilisez @ comme indice. Le script complet ressemble à ceci :

Vous pouvez aussi afficher les clés d’un tableau à la place. Pour ce faire, ajoutez un point d’exclamation avant le nom du tableau :

Afficher un élément d’un tableau est utile pour vérifier votre script avant de le transmettre à d’autres commandes ou fonctions, afin de vous assurer que vous travaillez avec les bonnes données.
Comment supprimer des éléments d’un tableau Bash ?
La suppression d’éléments d’un tableau permet d’en retirer un élément précis, selon un processus similaire à celui utilisé pour y faire référence. Utilisez un index ou une clé combiné(e) à la commande intégrée `unset` pour supprimer un élément de tableau, comme indiqué dans cette syntaxe :
unset ArrayName[index-or-key]
Voici un exemple de suppression d’un seul élément dans un tableau indexé :

Une logique similaire s’applique aux tableaux associatifs :

Pour supprimer un tableau entier, utilisez `unset` avec le nom du tableau, comme indiqué ici :

Rien ne s’affiche après avoir tenté d’imprimer les éléments du tableau, car la commande intégrée `unset` les a supprimés. Cela supprimera aussi complètement l’index de votre tableau. Par exemple, si vous supprimez 1 du tableau suivant, seuls 0 et 2 restent :
IndexedArray=([0]='car' [1]='plane' [2]='bike')
Si vous supprimez un index ou une clé qui n’existe pas, votre tableau ne sera pas modifié. Vous n’obtiendrez pas non plus d’erreur, et l’opération se terminera sans aucun message.
Supprimer un élément de vos tableaux Bash est une opération courante si vous stockez des données dynamiques, comme des journaux. À mesure que votre script évolue, vous pouvez supprimer les éléments inutilisés pour le garder mieux organisé.
Comment parcourir un tableau Bash ?
La création de boucles Bash est un aspect fondamental de l’apprentissage des bases du scripting Bash. Vous pouvez également utiliser des boucles avec des tableaux en utilisant cette syntaxe :
for i in "${Array[@]}"; do action; donePar exemple, le cas d’usage le plus courant consiste à parcourir chaque élément du tableau :

Vous pouvez également associer les clés aux éléments du tableau et les afficher ensemble comme ceci :

Parcourir un tableau est utile pour automatiser les tâches impliquant une grande quantité de données. Par exemple, vous pouvez renommer plusieurs fichiers en lot en les passant à la commande `mv`, ou installer plusieurs paquets simultanément à l’aide du gestionnaire de paquets de votre système.
Comment passer un tableau Bash à une fonction ?
Passer un tableau Bash à des fonctions permet de gagner un temps considérable lors de l’écriture de scripts. Au lieu d’écrire le même code de manière répétée, vous pouvez appeler une fonction déjà écrite. Nous allons reprendre la boucle d’itération mentionnée précédemment et en faire une fonction :
function Iteration
{
m=${#IndexedArray[@]}
for (( i=0; i<m; i++ ))
do
echo ${IndexedArray[$i]}
done
}
IndexedArray=(car bike plane)
Iteration ${IndexedArray[@]}En l’exécutant dans la ligne de commande, vous obtiendrez le résultat suivant :

L’intégration de fonctions lors de l’utilisation de tableaux Bash dans des scripts vous aide à accomplir des tâches complexes sur de grands ensembles de données, comme l’analyse de sorties ou le filtrage de journaux. Cette opération fonctionne généralement avec une boucle pour parcourir les données.
À retenir
Les tableaux Bash vous permettent de gérer plus efficacement de grandes quantités de données, ce qui est particulièrement utile lorsque vous administrez un système de type UNIX, comme un VPS Linux. Dans des applications concrètes, les tableaux Bash sont couramment utilisés pour transmettre des valeurs à des commandes, des fonctions ou des boucles.
Comme l’utilisation des tableaux Bash avec des fonctions, des boucles et des commandes varie selon la tâche, nous vous recommandons vivement de les explorer plus en détail. Si vous avez besoin d’exemples, consultez notre tutoriel sur les exemples de scripts Bash pour découvrir à quoi ces scripts peuvent ressembler dans des applications concrètes.
Pour mieux comprendre les applications des tableaux Bash, essayez de créer un script qui indexe des fichiers et les parcourt en boucle afin d’exécuter une tâche automatisée, comme le renommage. Vous pouvez le faire sur votre propre ordinateur Linux ou configurer un environnement d’apprentissage sur la solution VPS de Hostinger.

Tout le contenu des tutoriels de ce site est soumis aux normes éditoriales et aux valeurs rigoureuses de Hostinger.