Shell Unix

interpréteur de commandes pour le système Unix
Ceci est une version archivée de cette page, en date du 19 mai 2013 à 09:46 et modifiée en dernier par KittyKit (discuter | contributions). Elle peut contenir des erreurs, des inexactitudes ou des contenus vandalisés non présents dans la version actuelle.

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.

Historique des shell Unix

Exemples

Comparatif

Gestion des entrées/sorties et redirection

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

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

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

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

Pipe

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

Brian Blackmore, « UNIX shell differences » (consulté le )

Voir aussi

Articles connexes