suivant: Expressions régulières
monter: L'interface de commande (shell)
précédent: Historique, complétion, variables d'environnement,
  Table des matières
Redirections
Faisons quelques exemples:
- date
- affiche la date courante sur le terminal.
- date |wc -c
- compte le nombre de caractères dans la
sortie de la commande date et affiche
cette information sur le terminal.
- date -error
- affiche une erreur sur le terminal.
- date -error |wc -c
- affiche une erreur sur le terminal,
et compte zéro caractères.
- date -error 2>&1 |wc -c
- donne le nombre de caractères
du message d'erreur.
Il y a trois fichiers (flux, flots) ouverts de façon standard
lorsqu'une commande est lancée par le shell, en règle générale:
Tableau 1:
Les flux standards
Numéro |
description |
usuellement |
0 |
entrée standard |
le clavier |
1 |
sortie standard |
l'écran |
2 |
erreur standard |
l'écran |
|
Les opérations possibles sont:
Tableau:
Les opérations de flux standards
Opération |
implémentation |
notes |
ouverture |
0< f, 1> f, 1» f |
entrée, sortie, sortie avec ajout sur f |
fermeture |
0<-, 1>- |
|
redirection |
2>&1 |
la sortie d'erreur passe dans la
sortie standard |
HERE document |
«EOF...EOF |
simule une entrée standard dans un
script |
|
Séparer la sortie d'erreur de la sortie standard permet de pouvoir
traiter les erreurs spécialement. Chacun de ces fichiers peut être
fermé, ouvert sur un fichier différent, ou connecté à un autre de ces
fichiers. On peut également définir des numéros de fichiers
supplémentaires et les utilisers dans des programmes en C, Perl ou
dans des scripts shell. Par exemple, le fichier 3 pourrait être défini
comme un tube de communication à un script agissant comme point de
rendez-vous.
Notez que l'ordre sur la ligne de commande a une importance lorsqu'on
redirige des flux sur d'autres flux. Comparer par exemple:
date -error > /dev/null 2>&1
et
date -error 2>&1 > /dev/null
suivant: Expressions régulières
monter: L'interface de commande (shell)
précédent: Historique, complétion, variables d'environnement,
  Table des matières
Marc SCHAEFER
2003-03-01