suivant chapitre avant contenu index

Suivant: Caractères génériques Chapitre: Didacticiel Linux Avant: Exploration du système


Les différents shells

  Comme nous l'avons mentionné beaucoup trop de fois, UNIX est un système d'exploitation multitâche et multi-utilisateurs. Le multitâche est très utile, et une fois que vous en avez pris l'habitude, vous ne pourrez plus revenir en arrière sur un système qui ne sait utiliser qu'un programme unique à la fois. Dans peu de temps, vous serez capable de lancer des applications en ``tâche de fond'', de suivre l'évolution de multiples programmes, d'enchaîner vos commandes en tous sens, de ne laisser aucun répit à votre microprocesseur...

Beaucoup des possibilités que nous décrirons dans cette section sont fournies par le shell directement. Faites attention à ne pas confondre UNIX (le système d'exploitation) avec le shell; le shell est juste une interface avec le système qui est dessous. Le shell fournit un grand nombre de fonctionnalités, offertes en réalité par UNIX.

  Le shell n'est pas qu'un simple interpréteur de commandesgif. C'est également un puissant langage de programmation, qui vous permet d'écrire des shell scripts, ou fichiers de commandes. Les utilisateurs de MS-DOS reconnaîtront une similarité avec leurs ``fichiers batch'', en beaucoup plus puissant toutefois. L'utilisation de shell scripts forme un outil très puissant, qui vous permettra d'automatiser et étendre votre système UNIX de manière souple et facile. Voyez la section 3.13.1 à ce sujet.

            Il y a différents types de shells dans le monde UNIX. Les deux types les plus importants sont le ``Bourne shell'' et le ``C shell''. Le shell Bourne utilise une syntaxe similaire à celle du shell original des tout premiers systèmes UNIX, comme System III. Le nom du shell Bourne sur la plupart des systèmes UNIX est /bin/sh (où sh signifie `shell''). Le C shell utilise une syntaxe très différente, ressemblant beaucoup au langage C, et s'appelle en général /bin/csh sous UNIX.

              Sous Linux, (et d'autres UNIX modernes), nous avons en plus plusieurs variantes de ces shells à notre disposition. Les deux les plus couramment utilisés sont le ``Bourne Again Shell'', ou ``Bash'' ( /bin/bash), et Tcsh ( /bin/tcsh). Bash est un Bourne Shell incluant beaucoup de caractéristiques supplémentaires que l'on trouve dans le C shell. Comme Bash supporte un sur-ensemble de la syntaxe du Bourne shell, tous les scripts écrits pour le shell Bourne standard fontionneront avec. Pour ceux qui préfèrent utiliser la syntaxe du C shell, Linux propose Tcsh, qui est une version très améliorée du C shell original.

Le type de shell que vous déciderez d'utiliser est un choix vraiment personnel. Certains préfèrent le shell Bourne, d'autres le C shell, peu importe. Tant qu'il s'agit de lancer des commandes ordinaires, les deux fonctionneront de la même manière, sans distinction. La différence n'apparaît que lorsque vous commencez à écrire un shell-script ou vouloir utiliser les possibilités complexes qu'ils proposent.

Nous signalerons éventuellement chaque fois que ce sera utile les différences entre ces deux shells dans les explications qui vont suivre. Toutefois, pour ce que nous utiliserons dans ce guide, les différences sont minimes. (Si vous voulez vraiment entrer dans le détail, commencez par lire les pages de manuel système de bash et de tcsh).  



suivant chapitre avant contenu index

Suivant: Caractères génériques Chapitre: Didacticiel Linux Avant: Exploration du système


Jean-Michel Antoine
Mon Apr 3 16:04:54 MET DST 1995