Outils pour utilisateurs

Outils du site


sysadmin:shell:redirections

Redirections des entrées/sorties standards

Les entrées sorties standard

Lors de la création des processus des descripteurs standards sont associées a des périphériques d’entrée/sortie par défaut:

  • 0 entrée standard stdin associée au clavier.
  • 1 sortie standard stdout associée à l'écran.
  • 2 sortie erreur standard stderr associée a l'écran.

Redirection des sorties

$ commande 2>&1 >file.txt

La redirection se fait en deux étapes:

  • La sortie d'erreur standard est redirigée sur le périphérique de sortie standard (écran)
  • La sortie standard est redirigée dans un fichier

Résultat: le fichier contiendra seulement le résultat de la commande, les message d'erreurs seront affichés à l'écran.

Le cas ci-dessous est différent:

$ commande >file.txt 2>&1
  • La sortie standard est redirigée dans un fichier file.txt
  • La sortie erreur standard est redirigée vers le périphérique fichier précédemment définit.

Résultat: La sortie standard de la commande et la sortie erreur sont redirigées dans le fichier.

Le pipe

Le méta-caractère pipe '|' permet de rediriger la sortie standard d'une commande sur l'entrée standard d'une autre. On peut ainsi chaîner les traitements. Il faut donc:

  • Que toute commande à gauche du pipe produise une sortie sur stdout.
  • Que toute commande à droite du pipe lise en entrée sur stdin.

Un filtre est une commande qui lit sur stdin et écrit sur stdout.

# Un exemple de traitement via les pipes
$ cat file.csv | uniq | cut -f 1 -d ','
sysadmin/shell/redirections.txt · Dernière modification : 2021/02/01 21:51 de 127.0.0.1