Sous Unix/Linux, un programme fonctionnant en mode texte utilise trois canaux principaux pour interagir avec l'utilisateur ou d'autres programmes.
stdin
). C'est sur son entrée standard qu'il lira les données à traiter. Par défaut, l'entrée standard est le clavier.
stdout
). Par défaut, la sortie standard correspond à l'écran (sous X11?, ce sera typiquement le terminal dans lequel le programme a été lancé).
stderr
). Par défaut, cette sortie correspond également à l'écran.
Une des forces de Unix est qu'il est facile de rediriger les entrées/sorties et de combiner des programmes entre eux.
>
date > /tmp/madate.txt
: écrit la date actuelle dans le fichier /tmp/madata.txt
et le créée si nécessaire. Si le fichier /tmp/madate.txt
existait déjà, il est écrasé.
>>
date >> /tmp/madate.txt
: écrit la date actuelle dans le fichier à la suite du fichier /tmp/madata.txt
. Si le fichier n'existait pas, il est créé.
sed -e "s/Sep/Septembre/" < ladate
: utilise le fichier ladate
comme entrée standard
sed -e "s/Sep/Septembre/" < ladate >> lanouvelledate
cat /scrountch 2> msgerreur
cat /scrountch > msg 2>&1
|
date | sed -e "s/Sep/Septembre/"
: sed
utilise comme entrée standard la sortie standard de la commande date
cat /tmp/t | sort | uniq | grep toto