Redirection simple
Le Pipe » | « :
Le symbole pipe » | » permet de passer le résultat d’une commande a la suivante.
Exemple:
commande1 | commande2
Plus grand que » > « :
Le symbole > redirige le résultat de la commande vers un fichier.
Si le fichier existe déjà, son contenu sera effacé.
Exemple:
commande > fichier
Deux fois plus grand que » >> « :
Redirige le résultat de la commande vers un fichier.
Si le fichier existe déjà, le résultat de la commande est ajouté à la suite du fichier.
Exemple:
commande >> fichier
Plus petit que » < « :
Exemple:
commande < fichier
Redirection avancées
Pour l’entrée standard, la sortie standard et la sortie d’erreur le numéro identifiant sera respectivement 0, 1 et 2.
Ces identifiants vont nous permettre de faire des redirections plus évolués.
Si l’identifiant source n’est pas précisé, c’est la valeur 1 qui sera prise par défaut (1>&2 peut s’écrire alors >&2).
Rediriger la sortie standard dans un fichier:
1> fichier.txt
qui s’écrit aussi comme ça (1 par défaut):
> fichier.txt
Rediriger la sortie d’erreur dans un fichier:
2> fichier.txt
Rediriger la sortie standard sur la sortie d’erreur:
1>&2
qui s’écrit aussi comme ça (1 par défaut):
>&2
1 étant l’identifiant descripteur source et 2 l’identifiant du descripteur sur lequel on veut rediriger.
Rediriger la sortie d’erreur sur la sortie standard:
2>&1
2 étant l’identifiant descripteur source et 1 l’identifiant du descripteur sur lequel on veut rediriger.
Rediriger la sortie standard et la sortie d’erreur dans un fichier:
> fichier.txt 2>&1
qui s’écrit aussi comme ça:
1>>
fichier.txt
2>>fichier.txt
ou comme ça (1 par défaut):
>>
fichier.txt
2>>fichier.txt
Le trou noir
Le fichier /dev/null est un peu particulier.
Si on affiche son contenu on n’obtient rien, et si on écrit quelque chose dedans ça disparaît.
Cela est très pratique pour supprimer une sortie.
Pour rediriger la sortie standard vers /dev/null :
> /dev/null
Pour rediriger toutes les sorties vers /dev/null :
> /dev/null 2>&1