Tables de hachage dans Bash

Nilesh Katuwal 15 février 2024
  1. Déclaration et ajout de paires <clé, valeur> dans la variable de dictionnaire dans Bash
  2. Récupération des paires <clé, valeur> du dictionnaire dans Bash
  3. Mise à jour de <clé, valeur> dans un dictionnaire dans Bash
  4. Supprimer une paire <clé, valeur> du dictionnaire
  5. Itération d’un dictionnaire dans Bash dans Bash
Tables de hachage dans Bash

Un dictionnaire, également appelé hashmap ou tableau associatif, est l’une des structures de données les plus fondamentales de tout langage de programmation pour stocker une collection d’éléments.

Un dictionnaire est une collection de clés, chacune ayant une valeur qui lui est associée. Vous pouvez insérer, récupérer ou modifier une valeur dans un dictionnaire à l’aide de la clé correspondante.

Bien que Bash ne soit pas un langage de programmation à usage général, il supporte nativement les hashmaps dans les versions quatre et supérieures.

Déclaration et ajout de paires <clé, valeur> dans la variable de dictionnaire dans Bash

Les variables dans Bash ne sont pas fortement typées, vous devez donc imposer un comportement de type type en indiquant l'attribut d’une variable.

Pour utiliser un dictionnaire dans Bash, utilisez l’instruction declare avec l’option -A qui signifie tableau associatif, pour déclarer une variable de dictionnaire.

$ declare -A dict

Nous avons maintenant déclaré une variable appelée dict, qui peut être utilisée comme un dictionnaire. Pour ajouter des paires <clé, valeur> au dictionnaire, nous suivrons la syntaxe suivante :

$ name_of_dictionary[key]=value

Ajoutons des paires <clé, valeur> en utilisant la syntaxe ci-dessus.

$ dict[1]=Nil
$ dict[2]=Esh

Nous avons ajouté deux paires <clé, valeur> où les clés sont 1 et 2 et les valeurs sont Nil et Esh.

Récupération des paires <clé, valeur> du dictionnaire dans Bash

Pour vérifier les valeurs correspondantes dans le dictionnaire avec une key, nous devons ajouter $ avec des accolades {} à la variable du dictionnaire que nous avons définie.

$ echo ${dict[1]}

Production :

Nil

Mise à jour de <clé, valeur> dans un dictionnaire dans Bash

Pour mettre à jour une <clé, valeur> existante dans le dictionnaire, nous devons insérer une nouvelle <clé, valeur> et écraser la valeur existante.

$ dict[1]=Nilesh

Si on récupère la valeur de la clé 1, alors :

$ echo ${dict[1]}

Production :

Nilesh

Comme on peut le voir, Nil de la clé 1 est remplacé par Nilesh.

Supprimer une paire <clé, valeur> du dictionnaire

Nous utilisons la commande unset pour supprimer une paire <clé, valeur>.

$ unset dict[1]

La commande ci-dessus supprimera le couple <clé, valeur> avec la clé 1.

Itération d’un dictionnaire dans Bash dans Bash

Dans Bash, nous pouvons utiliser une boucle for pour parcourir un dictionnaire. Regardons un exemple :

#!/bin/bash
declare -A dict
dict[1]=Nil
dict[2]=Esh
for key in "${!dict[@]}"; do 
    echo "$key ${dict[$key]}" 
done

Nous avons réécrit la commande précédente dans un script et l’avons exécutée dans un terminal Bash. "" permet de manipuler les touches avec des espaces.

Production :

sortie du dictionnaire bash