Shell
Un Shell bash (crédit ArchLinux) En informatique, le Shell (coquille en anglais), est une interface entre l’utilisateur et le système d’exploitation. En français, on l’appellera plus couramment “interpréteur de commandes”, puisqu’il est chargé de cette tâche lorsqu’un utilisateur saisit une commande au clavier.
Au début de l’informatique industrielle, à une époque où les interfaces graphiques n’avaient pas encore été inventées, pas plus que la souris d’ailleurs, la ligne de commande régnait tant pour la programmation que pour l’utilisation des ordinateurs, c’était le temps exclusif des interpréteurs de commande, lettres blanches sur fond noir. De nos jours, le Shell persiste encore et pour les plus qualifiés, c’est toujours un petit logiciel très utile qui liste toutes les commandes existantes d’un système donné et se charge de les exécuter à la demande.
Sous Unix / Linux, ses systèmes de prédilection, les Shell en lignes de commandes sont nombreux. Qu’ils se nomment ksh, bash, zsh et bien d’autres encore, ils fonctionnent à peu près tous de la même façon : à l’ouverture d’une invite de commande, l’utilisateur verra, à l’intérieur de sa session, s’ouvrir le Shell qui lui correspond avec les droits accordés par sa session. À cet endroit, dans le répertoire de base de l’utilisateur clignote le prompt, sur fond noir ou bleu. Dès lors, le Shell est prêt à recevoir, par l’intermédiaire du clavier uniquement, une commande système, voire un script (une suite de commandes) permettant de programmer des actions complexes.
À noter que les Shell existent dans tous les systèmes d’exploitation tant cette interface est légère, puissante et rapide. Ainsi, la commande CMD ouvre aussi un Shell simplifié sous Windows. Pour les utilisateurs avancés, Microsoft propose aussi PowerShell, livré en standard avec les dernières versions de Windows.
Toutefois, malgré ses avantages, la ligne de commande n’est pas très populaire auprès du grand public, et pour cause : de présentation austère, elle implique une connaissance préalable des commandes à saisir, ainsi qu’une connaissance de l’anglais pour les comprendre. De plus, les filets de sécurité comme les assistants sont absents de cet environnement aussi basique qu’efficace.
Pourtant, depuis l’aube de l’informatique, la ligne de commande est indispensable aux experts comme aux passionnés. Pour l’instant c’est, et de loin, l’interface la plus stable, la plus puissante aussi, pour piloter en profondeur un système d’exploitation et ses dépendances.