Shell Unix
|
|
Cet article est une ébauche concernant l’informatique.
Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les recommandations des projets correspondants.
|
Un shell Unix est un interpréteur de commandes destiné aux systèmes d'exploitation Unix et de type Unix qui permet d'accéder aux fonctionnalités internes du système d'exploitation. Il se présente sous la forme d'une interface en ligne de commande accessible depuis la console ou un terminal. L'utilisateur lance des commandes sous forme d'une entrée texte exécutée ensuite par le shell. Dans les différents systèmes d'exploitation Microsoft Windows, le programme analogue est command.com, ou cmd.exe.
Les systèmes d'exploitation de type Unix disposent le plus souvent d'un shell. À l'origine, l'interpréteur de commandes par défaut était sh, qui évolua en de nombreuses versions, dont csh, étendu en tcsh, ou ksh, ou encore rc... Mais aujourd'hui bash, s'inspirant de sh, ksh, et csh, est le shell le plus répandu, bien qu'il existe d'autres interpréteurs de commandes, comme zsh, ou ash.
Sommaire |
Historique des shell Unix [modifier]
Exemples [modifier]
- Shell de Stephen Bourne
- Bourne shell (sh)
- Bourne-Again shell (bash)
- Csh : C shell
- tcsh (Tenex C shell, version moderne du csh)
- Shell de David Korn : Korn shell (ksh)
- Shell de Kenneth Almquis (en), utilisé lorsqu'il est nécessaire d'avoir un shell prenant peu de place sur le disque, clone de la variante SVR4 du Bourne shell;
- Ash (Almquist SHell)
- Dash shell (Debian Almquist SHell)
- Z Shell (zsh), reprenant les fonctions les plus pratiques de bash, ksh et tcsh.
Comparatif [modifier]
Gestion des entrées/sorties et redirection [modifier]
Les shells permettent de réaliser des redirections. Une redirection consiste à rediriger l'entrée ou la sortie d'une commande vers une autre commande ou un fichier.
Redirection droite simple [modifier]
Syntaxe:
commande > fichier
Le résultat de l'invocation de la commande commande sera écrit dans le fichier fichier, en écrasant le précédent contenu.
Exemple:
$: cat file Welcome $: echo "Hello world" > file $: cat file Hello world
Redirection droite double [modifier]
Syntaxe:
commande >> fichier
Le résultat de l'invocation de la commande commande sera écrit dans le fichier fichier, à la suite des données déjà présentes.
Exemple:
$: cat file Welcome $: echo "Hello world" >> file $: cat file Welcome Hello world
Redirection gauche simple [modifier]
Syntaxe:
commande < fichier
La commande commande va lire le contenu du fichier fichier au lieu de lire sur l'entrée standard (clavier).
Exemple:
$: cat < file Welcome
Redirection gauche double [modifier]
Syntaxe:
commande << END
La commande commande va lire sur l'entrée standard jusqu'à ce que le mot suivant la double redirection soit rencontré.
Exemple:
$: cat << TOTO ? foo ? bar ? moomoo ? TOTO foo bar moomoo
Pipe [modifier]
Syntaxe:
commande_1 | commande_2
Le résultat de la commande commande_1 va être redirigé dans l'entrée de la seconde commande commande_2.
Exemple:
$: echo "Hello world" | grep -o "Hello" Hello
Notes et références de l'article [modifier]
Brian Blackmore, « UNIX shell differences ». Consulté le 13 février 2012