Source et Bash: comprendre les différences.
La maîtrise des concepts fondamentaux dans le monde de la programmation shell est essentiel pour tirer pleinement partie des fonctionnalités offertes par les shells Unix.
Dans le monde de la programmation shell, il est essentiel de maîtriser les concepts fondamentaux pour tirer pleinement parti des fonctionnalités offertes par les shells Unix. Deux termes couramment utilisés dans ce contexte sont "Source" et "Bash". Bien qu'ils soient souvent associés, ils désignent des éléments distincts. Dans cet article, nous allons examiner ces concepts et clarifier leurs différences pour vous permettre de mieux comprendre leur utilisation et leurs applications pratiques.
- Le concept de "Source"
- Contenu du fichier
- Exécution du fichier Une fois le fichier exécuté, nous pouvons tout de suite voir les variables définis dans le script disponible dans l'environnement shell en cours et peuvent être listés en tapant echo $nom_de_la_variables
- Le concept de Bash
- Différences entre Source et Bash
La commande source, a pour rôle principal d'exécuter un script dans le contexte actuel du shell en cours d'exécution. Lorsque nous utilisons la commande source sur un fichier de script, son contenu est lu et exécuté dans le même processus que celui du shell actuel. Cela signifie que toutes les variables, fonctions et autres éléments définis dans le script sont disponibles dans l'environnement du shell après l'exécution de la commande source.
L'exécution d'un script appelé "script.sh" contenant des commandes et des définitions de variables, ce fait en utilisant la commande source dans Bash de la manière suivante :
source script.sh


Bash, acronyme de Bourne Again SHell, est à la fois un shell interactif et un langage de script puissant. Il est couramment utilisé sur de nombreux systèmes d'exploitation Unix. Il offre une gamme étendue de fonctionnalités et fournit un environnement convivial pour l'exécution de commandes, la manipulation de fichiers et l'automatisation des tâches.
Si nous prenons le script précédent et on l'exécute en faisant un bash script.sh, les variables ne seront pas disponibles dans l'environnement du shell en cours.
La principale différence entre source et bash réside dans leur rôle et leur fonctionnalité respective. source est une commande utilisée dans le shell Bash (et d'autres shells Unix) pour exécuter un script dans le contexte actuel du shell, en conservant les modifications apportées à l'environnement du shell. D'un autre côté, Bash est un shell interactif et un langage de script complet qui offre un ensemble complet de fonctionnalités pour la programmation shell, y compris l'exécution de scripts, la manipulation de variables, les structures de contrôle et bien plus encore.
Comprendre la distinction entre source et bash est essentiel pour les développeurs et les administrateurs système qui travaillent avec des scripts shell. En acquérant une maîtrise de ces concepts, nous pouvons tirer le meilleur parti des fonctionnalités offertes par les shells Unix dans nos projets de programmation et d'automatisation.

Hulian Kenfack
Ingénieur Cloud / DevOps
No comments yet. Start a new discussion.