Qu’est-ce que le shell Bash sous Linux ?


Bash ressemble à un nom étrange pour une interface de ligne de commande qui accueille les utilisateurs se connectant à n'importe quelle distribution Linux. Qu’est-ce que Bash exactement ? À quoi peut-on l'utiliser ? Découvrons-le.

Bien que Bash soit généralement associé à Linux, vous pouvez également utilisez-le sous Windows. macOS inclut déjà Bash, bien qu'il ait remplacé le shell par défaut par Zsh, une version avancée de Bash avec quelques fonctionnalités supplémentaires.

Qu'est-ce qu'un shell ?

Le terme "shell Bash" est souvent utilisé, mais de toute façon, qu'est-ce qu'un shell ? Pourquoi est-ce nécessaire ? Et pourquoi Bash semble-t-il être le seul shell disponible ?

Les systèmes d'exploitation modernes, avec leurs interfaces utilisateur graphiques intuitives, ont rendu l'utilisation d'un ordinateur facile. Mais aux débuts des ordinateurs, dire à un système quoi faire n'était pas si simple.

Les programmeurs devaient connaître les détails de bas niveau du système pour lequel ils codaient et instruire manuellement chaque élément matériel. Les systèmes d'exploitation ont été conçus pour combler cette lacune, mais comment donner des instructions au système d'exploitation lui-même ?

Entrez dans le Shell. La couche la plus externe du système d'exploitation a été conçue pour être un environnement interactif exposant toutes les fonctionnalités de l'ordinateur dans une interface simple. Ce shell était le plus poussé qu'un utilisateur de l'ordinateur devait explorer, car il contenait toutes les commandes nécessaires au fonctionnement du système.

Bourne Again : comment Bash est né

Une idée fausse courante est que Bash a été créé par Linus Torvalds pour le système d'exploitation Linux. En réalité, Bash a simplement été porté sous Linux, déjà utilisé dans son prédécesseur, Unix.

À bien des égards, Unix est l'endroit où tout a commencé pour les systèmes d'exploitation modernes. Il a supprimé une grande partie de la complexité alambiquée qui tourmentait les premières implémentations de systèmes d'exploitation, en présentant les fonctions d'un ordinateur dans une interface textuelle relativement simple.

Bien sûr, Unix lui-même a emprunté la plupart de ses idées à Multics, y compris le concept de shell. Mais c'est Unix qui a réellement popularisé la technique, avec le déploiement du Thompson Shell avec sa première version.

Sa fonctionnalité était cependant assez limitée et de nombreux programmeurs ont fini par modifier le shell pour le rendre plus convivial pour les scripts. Le Bourne Shell était le remplacement officiel du shell Unix, ajoutant la prise en charge des scripts shell..

Le Bourne Again Shell a été publié beaucoup plus tard, offrant une nouvelle amélioration de ses capacités de script et le transformant en un shell sous licence GNU gratuit et open source pouvant être utilisé par n'importe quel système d'exploitation. Et il a été rapidement adopté par Linux, devenant le shell par défaut de ses différentes distributions.

Mais que peut faire Bash ?

Bash est essentiellement un environnement de script à part entière avec un accès complet au système Linux. De la gestion de fichiers à l'exécution d'applications, vous pouvez effectuer toutes les tâches informatiques avec les commandes Bash.

Pour la plupart des utilisateurs de Linux, cela se traduit uniquement par des commandes shell manuelles. Après tout, l'objectif principal de Bash est de servir d'interface avec le système d'exploitation.

Et il existe un certain nombre de ces commandes intégrées. Vous pouvez gérer la propriété des fichiers avec chown, configurer les paramètres réseau avec siconfig, localiser les répertoires avec trouver – la liste est longue.

Mais Bash n'existerait pas si les commandes Linux étaient tout ce qui intéressait les utilisateurs. Non, la véritable puissance du shell Linux réside dans les scripts.

L'importance des scripts

L'idée des commandes de script est simple. Au lieu de saisir manuellement toutes les commandes que le système doit exécuter une par une, vous enregistrez les commandes dans un fichier texte qui peut être exécuté à la demande.

Cela transforme l'interface shell en une sorte de langage de programmation, permettant aux utilisateurs d'automatiser n'importe quelle action dans un script réutilisable. Évidemment, cela va plus loin, car tout langage de programmation a besoin d'éléments tels que des variables et des fonctions en plus de la possibilité de sauvegarder le code.

Et Bash possède toutes ces fonctionnalités. C'est pourquoi le shell – et dans une certaine mesure Linux en général – est si populaire pour la gestion de serveurs et de systèmes commerciaux.

Un utilisateur à domicile peut y parvenir en cliquant sur un ensemble de boutons, mais un administrateur système doit être capable d'effectuer n'importe quelle action sur un grand nombre d'ordinateurs à distance. Les scripts Bash sont ce qui rend possible ce type de gestion automatisée du système.

Par exemple, considérons notre guide pour renommer les fichiers et dossiers sous Linux. Le guide illustre les deux méthodes – interface graphique et script. Comme vous pouvez le constater, la méthode de script est beaucoup plus évolutive lorsqu'un grand nombre de fichiers sont impliqués.

Premiers pas avec Bash.

L'avantage de Bash est qu'il ne se limite pas à Linux. Vous pouvez désormais installer Linux sur Windows utiliser le sous-système Windows pour Linux (WSL), fourni par défaut avec Bash.

Cela signifie que vous pouvez commencer à expérimenter avec Bash sans avoir à passer complètement à Linux. Même si vous êtes un utilisateur occasionnel qui n'a pas l'intention de travailler avec des serveurs Linux, les capacités intéressantes d'un shell Bash peuvent vous être utiles.

Ce n'est pas que Bash soit votre seule option pour automatiser les tâches informatiques. PowerShell est une interface similaire qui fonctionne avec Windows – à part ce que vous pouvez gérer avec l'invite de commande, bien sûr.

Articles Similaires:


1.02.2023