14/11/2024

Bash

Script Bash – Comment concaténer des chaînes de caractères ?

I. Présentation

Dans ce tutoriel, nous allons apprendre à concaténer des chaînes de caractères dans un script Bash. La concaténation consiste à joindre au moins deux chaînes de caractères ensemble pour former une seule chaîne. Autrement dit, c'est comme s'il y avait une fusion entre deux chaînes de caractères, qui peuvent être représentées par des variables. Ceci est utile pour former des identifiants à partir d'informations personnelles, pour constituer des chemins de fichiers, etc.

Pour rappel, voici le lien vers notre introduction au Bash :

II. Bash : concaténer des chaînes de caractères

La méthode la plus simple pour concaténer des valeurs en Bash est d'utiliser de juxtaposer les deux variables, en ajoutant un espace entre le nom des valeurs variables. Sinon, les deux valeurs seront collées.

Dans ce script, les variables "prenom" et "nom" contiennent respectivement les chaînes "Florian" et "Burnel". À partir de ces deux valeurs, nous allons constituer le nom complet et le stocker dans la variable "nomcomplet".

prenom="Florian"
nom="Burnel"
nomcomplet="$prenom $nom"

Si nous affichons le contenu de la variable "nomcomplet", nous obtenons le résultat attendu.

echo $nomcomplet
Florian Burnel

Voilà comment concaténer deux chaînes de caractères (string) en Bash !

Remarque : que vous souhaitez concaténer 2 valeurs, 3 valeurs, 4 valeurs, etc.... la syntaxe reste la même ! Il suffit de spécifier les bons noms de variables.

III. Bash : concaténer des variables et du texte

Vous pouvez également concaténer des variables avec des chaînes de caractères pour créer des messages dynamiques.

Voici un exemple où nous allons intégrer le nom et le prénom dans une phrase.

prenom="Florian"
nom="Burnel"
message="Bonjour, $prenom $nom ! Bienvenue sur IT-Connect !"
echo $message

Dans la phrase retournée par la commande echo, les variables "prenom" et "nom" sont bien remplacées par leur valeur respective. Ci-dessous, le résultat obtenu en image :

Bash - Concaténer chaines de caractères

Si vous souhaitez que la valeur de la variable et le texte soient concaténés sans inclure un espace, vous devrez adapter la syntaxe. En effet, si nous voulons concaténer la variable "prenom" avec le texte "_ITConnect", de façon à faire une seule chaine sans espace, Bash va croire que la variable se nomme "prenom_ITConnect". Ceci implique de préciser le nom de la variable entre "${}". Donc, voici la syntaxe à utiliser :

prenom="Florian"
texte="${prenom}_ITConnect"

Voici le résultat obtenu :

Bash - Concaténer string dans script

IV. Bash : concaténer des valeurs pour constituer un chemin

Nous allons voir comment concaténer des valeurs pour constituer un chemin complet vers un fichier. Nous avons 3 variables pour définir le dossier racine, le sous-dossier ainsi que le nom du fichier.

BaseDir="/home/flo"
SubDir="Documents"
Filename="itconnect.txt"

Nous allons concaténer ces variables pour créer un chemin complet. Ceci n'est pas plus compliqué que de concaténer deux chaines quelconques.

Path="$BaseDir/$SubDir/$Filename"
echo "Chemin complet : $Path"

Suite à l'exécution de ces lignes, la variable "Path" contient le chemin complet attendu, à savoir "/home/flo/Documents/itconnect.txt".

V. Conclusion

La concaténation de valeurs est une opération simple, mais en même temps indispensable ! Lors de l'écriture de scripts Bash, il est très fréquent d'avoir besoin de concaténer des chaînes de caractères ! Le meilleur exemple est certainement la génération de messages dynamiques destinés à alimenter un fichier de log ou à être affichés dans la console.

Pour approfondir le sujet, vous pouvez consulter nos tutoriels Bash en utilisant le lien ci-dessous, ou consulter cette page :

author avatar
Florian BURNEL Co-founder of IT-Connect
Ingénieur système et réseau, cofondateur d'IT-Connect et Microsoft MVP "Cloud and Datacenter Management". Je souhaite partager mon expérience et mes découvertes au travers de mes articles. Généraliste avec une attirance particulière pour les solutions Microsoft et le scripting. Bonne lecture.
Partagez cet article Partager sur Twitter Partager sur Facebook Partager sur Linkedin Envoyer par mail

Laisser un commentaire

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

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.