Les pipes

Redirection des erreurs Les types de fichier

Commandes UNIX et redirection

Un pipe (en français tube de communication) permet de rediriger la sortie d'une commande vers une autre. En d'autres termes, pour rediriger les résultats (la sortie) d'une commande, on a vu qu'on pouvait taper :

commande1 > sortie1

On redirige cette sortie vers une autre commande, ça devient donc une entrée pour cette dernière commande, pour cela vous tapez :

commande2 < sortie1

En fait la syntaxe commande1|commande2 (| étant le symbole de pipe) est totalement équivalente aux deux lignes de commandes précédentes.

Exemple : ls permet la visualisation de fichiers, en tapant ls, on obtient :

fichier1
fichier2
totofichier

grep permet la recherche d'une chaîne de caractère dans une liste donnée, en tapant grep toto * (* signifie tous les fichiers, grep recherche la chaîne de caractère toto dans les noms de tous les fichiers), on obtient :

totofichier

On a le même résultat avec le |, en tapant :

ls | grep toto

La première commande aura pour effet de lister le nom des fichiers se trouvant à l'endroit où l'on a tapé la commande, la sortie standard (le résultat de la commande) est donc une liste de nom, elle est redirigée vers la commande grep, qui va y chercher une chaîne de caractère contenant toto. Le résultat est donc aussi:

totofichier

Retour haut de la page