Retour au cours

52. Redirection d'entrée et d'erreur

Les Bases de Linux : de Zéro à Héros du CLI

Rediriger l'entrée et séparer les erreurs

Redirection d'entrée (<)

Le symbole < redirige STDIN depuis un fichier au lieu du clavier. C'est utilisé lorsqu'une commande attend une saisie interactive mais que vous voulez lui fournir des données pré-écrites.

bash

La commande 'sort' lit l'entrée depuis donnees.txt au lieu du terminal

$ sort < donnees.txt

Redirection d'erreur (2>) - Standard Error

Comme STDERR possède le descripteur de fichier 2, nous utilisons 2> pour rediriger les messages d'erreur.

bash

Essayer de lister un répertoire inexistant et rediriger le message d'erreur

$ ls -l inexistant 2> erreurs.log

STDOUT (la liste réussie) va vers l'écran,

mais STDERR (le message d'erreur) va vers erreurs.log.

Rediriger à la fois STDOUT et STDERR

Pour rediriger à la fois la sortie réussie et les erreurs vers le même fichier, vous pouvez utiliser le raccourci Bash &> ou rediriger FD 2 vers FD 1.

bash

Rediriger STDOUT et STDERR vers sortie_totale.log (Bash moderne)

$ ls -l /etc/ /dossier_inexistant &> sortie_totale.log