Le shell en Interactif
Écrit par VieuxProf   
01-01-1999

  • Le shell est l'interpréteur interactif de commandes Unix. Il sert aussi à l'exécution des scripts. Il attend la commande de l'utilisateur, la traite, puis rend la main à l'utilisateur.
  • Dans le détail, il effectue les opérations suivantes :
    • attend la commande de l'utilisateur (prompt)
    • traite les caractères spéciaux
    • recherche l'exécutable appelé
    • "fork" un processus fils qui exécute la commande
    • attend la fin de la commande (mort du processus fils)
    • retourne au prompt.
  • Le shell spécifié dans /etc/passwd est ouvert par l'utilisateur lorsqu'il se logue. Le fichier /etc/shells liste les shells disponibles sur le système.
  • Les invites de shell ou prompts sont # pour root et $ pour l'utilisateur.
  • Les commandes 'history' ou 'fc -l' affiche les $HISTSIZE dernières commandes. L'historique des commandes s'affiche et s'édite avec la commande 'fc'. L'éditeur par défaut de fc est 'ed' mais on peut utiliser 'vi' (set -o vi), 'emacs', etc.

ShellNom AuteursRemarques
sh Shell POSIX normalisé IEEE et ISO - standard Unix pour portabilité des scripts
- dérivé de sh
bsh Bourne Shell Steve Bourne, AT&T le plus ancien
ksh Korn Shell David Korn, AT&T complète bsh avec des fonctionnalités de csh
csh C-Shell Bill Joy, Berkeley - UNIX-BSD
-parenté avec langage C
-incompatible avec bsh
bash Bourne Again Shell Brian Fox & Chet Ramey standard Linux gratuit, compatible POSIX


NomCheminFonction
profile /etc/ variables d'environnement et aliases de commandes généraux
shrc ou bashrc /etc/ aliases et fonctions généraux
.profile ou .login ou .bash_profile /home/~/ variables d'environnement utilisateur
.shrc ou .bashrc /home/~/ aliases et fonctions utilisateur
.history ou .bash_history /home/~/ historique des commandes utilisateur
.logout ou .bash_logout /home/~/ script de déconnexion utilisateur
ctrl-D ou exit ou logout - commandes de fermeture du shell courant
Dernière mise à jour : ( 02-02-2008 )