Envoyer la sortie d'une commande dans un tube
Utilisez | pour envoyer une commande vers la suivante, puis enchaînez grep et wc.
Démarrer la leçon interactiveUn tube | prend la sortie de la commande à gauche et s'en sert comme entrée à droite. Vous arrêtez d'enregistrer des fichiers jetables juste pour les filtrer.
Filtrer une liste : ls | grep
ls affiche les noms. grep garde les lignes qui vous intéressent. Ensemble :
Gardez uniquement les noms correspondants de ls !
Garder les fichiers texte :
> écrit dans un fichier. | écrit vers une autre commande. Les confondre est la première erreur habituelle.
Enchaîner trois commandes
Vous pouvez enchaîner plus d'un tube. Comptez les lignes correspondantes sans ouvrir le journal :
printf '%s\n' 'info: started' 'warn: slow' 'warn: timeout' > log.txt
cat log.txt | grep warn | wc -l
cat affiche le fichier, grep garde les lignes d'avertissement, wc -l les compte.
Construisez les tubes de gauche à droite : produire les données, les filtrer, puis les résumer.
Vérification des connaissances
1 / 3Que fait l'opérateur | ?
Références
Ces liens de documentation fournissent des informations fiables sur les commandes utilisées dans cet article.
À suivre
Trouvez les lignes correspondantes dans un fichier, puis ignorez la casse avec grep -i.