Le mécanisme d'interprétation du « Shell »

Magazine
Marque
SysOps Pratique
HS n°
Numéro
39
Mois de parution
juillet 2017
Spécialité(s)


Résumé

La complexité qu’on attribue à la programmation « Shell » est essentiellement due au manque de soin apporté à l’étude et la bonne compréhension de son mécanisme d’interprétation. En fait, si celui-ci semble souvent intuitif, surtout pour les utilisateurs déjà habitués à d’autres langages de script ou de programmation, il est fondamental de bien comprendre chacune des étapes de l’analyse d’une ligne de script pour prendre réellement en main le « Shell ». Cet article va donc détailler, étape par étape, comment un interpréteur, « Bash » ou autre, va découper et exécuter les commandes saisies ou les lignes d’un script « Shell », et ainsi, expliciter, autant que possible, le mécanisme d’interprétation de ce dernier.


1. Langage interprété

Une notion cruciale à retenir avant tout est que le « Shell » est un langage interprété [1]. Ceci signifie que les instructions utilisées vont être tout d'abord interprétées avant d'être transformées en langage machine. Cette approche est très différente des langages de programmation dits « compilés » (comme le C ou même le Java).

Dans le cas de ces derniers, les instructions ou mot-clés du langage sont directement transformés en instructions-machine. Il y a donc une relation plus « directe » entre le code et l'exécution par la machine. Dans le cas des langages interprétés, cette relation est beaucoup moins directe.

Ceci a de nombreuses conséquences, dont l'une est l'absence de gestion de la mémoire. En effet, dans un langage interprété, c'est à la charge de l'interpréteur – qui exécute le programme comme nous allons le voir par la suite – de s'occuper d'allouer (et surtout de…

La suite est réservée aux abonnés. Il vous reste 96% à découvrir.
  • Accédez à tous les contenus de Connect en illimité
  • Découvrez des listes de lecture et des contenus Premium
  • Consultez les nouveaux articles en avant-première
Envie de lire la suite ? Rejoignez Connect
Je m'abonne maintenant


Article rédigé par

Par le(s) même(s) auteur(s)

« Day One Operations » avec Ansible : maintenance et évolution

Magazine
Marque
SysOps Pratique
Numéro
152
Mois de parution
novembre 2025
Spécialité(s)
Résumé

Dans un précédent article [1], nous avons commencé à aborder la thématique des « Day One Operations » avec Ansible. Nous continuons dans ce nouvel opus sur notre lancée, en évoquant d’autres cas d’utilisation de l’outil d’automatisation dans le contexte de la maintenance et l’évolution d’une infrastructure logicielle existante et complexe.

« Day One Operations » avec Ansible

Magazine
Marque
SysOps Pratique
Numéro
151
Mois de parution
septembre 2025
Spécialité(s)
Résumé

Si Ansible facilite l’installation et le maintien en condition opérationnelle d’une infrastructure logicielle, l’outil peut aller encore plus loin et devenir un atout précieux pour continuer de faire évoluer son système au cours du temps. Voyons ceci en détail, et par la pratique, dans ce premier article sur le thème « Day One operations » avec Ansible !

Programmation robuste avec Bash

Magazine
Marque
GNU/Linux Magazine
Numéro
277
Mois de parution
septembre 2025
Spécialité(s)
Résumé

« Développer avec Bash ? Impossible, ce n’est pas un véritable langage de programmation ! Et ce genre de scripts sont bien trop fragiles ! » Voilà des idées reçues sur l’un des plus célèbres interpréteurs Shell que nous allons tenter, aujourd’hui, dans cet article, de faire disparaître pour de bon !

Les listes de lecture

Débuter avec les conteneurs

8 article(s) - ajoutée le 01/07/2020
Découvrez notre sélection d'articles pour faire vos premiers pas avec les conteneurs, apprendre à les configurer et les utiliser au quotidien.

Les bases du DevOps

11 article(s) - ajoutée le 02/07/2020
Si vous recherchez quels sont les outils du DevOps et comment les utiliser, cette liste est faite pour vous.

Tout pour la sauvegarde

8 article(s) - ajoutée le 02/07/2020
Il est essentiel d'effectuer des sauvegardes régulières de son travail pour éviter de perdre toutes ses données bêtement. De nombreux outils sont disponibles pour nous assister dans cette tâche.
Plus de listes de lecture