Introduction aux cascades de filtres sous Unix : Différence entre versions
imported>Jacques Ducloy (→Combinaison simple des redirections) |
imported>Jacques Ducloy (→Pipes) |
||
Ligne 59 : | Ligne 59 : | ||
copie le contenu du fichier fA pour créer le fichier fB. | copie le contenu du fichier fA pour créer le fichier fB. | ||
− | === | + | ===Combinaison de fitres en cascade - le pipe=== |
[[File:UnixPipe.gif|center]] | [[File:UnixPipe.gif|center]] |
Version du 16 janvier 2014 à 18:21
Sommaire
Avant propos
Les exemples donnés dans cette page utilise l'environnement DILIB. Avant toute manipulation ne pas oublier d'initialiser par :
. ~/Dilib/init.sh
Redirections et Entrées sorties standard
Entrées sorties standard
Toute commande Unix peut utiliser :
- l'entrée standard (stdin)
- la sortie standard (stdout)
- Valeurs implicites (pour un poste de travail) :
- stdin : le clavier
- stdout : l'écran
Redirection de l'entrée standard vers un fichier
Soit :
- aUnixCommand = un programme Unix de type filtre
- myFile = un fichier
La commande shell suivante :
aUnixCommand < myFile
appliquera le programme aUnixCommand au fichier myFile et affichera le résultat sur l'écran.
- Exemple avec la commande cat
Dans la bibliothèque DILIB, le fichier $DILIB/data/Wicri/Metadata/IsoC2ToPays.tab
contient une liste de couples « code ISO - pays » avec la tabulation comme séparateur. La commande :
cat < $DILIB/data/Wicri/Metadata/IsoC2ToPays.tab
recopie le fichier sur l'écran.
- Exemple avec la commande grep
La commande grep permet de sélectionner des lignes à partir d'un paramètre donné en première position. Poyr imprimer les noms de pays qui contiennent le mot « Sud », il faut faire :
grep Sud < $DILIB/data/Wicri/Metadata/IsoC2ToPays.tab
Redirection de la sortie standard vers un fichier
La sortie standard peut à son tour être redirigée vers un fichier en utilisant le caractère « > ».
Par exemple, pour mémoriser la date (et l'heure) en cours dans un fichier, il suffit d'écrire :
date > maDate.txt
Combinaison simple des redirections
Entrée et sortie standard peuvent être rédirigées simultanément.
ainsi :
cat < fA > fB
copie le contenu du fichier fA pour créer le fichier fB.