Menu
Coddy logo textTech

Pipe avec Grep

Fait partie de la section Les fondamentaux du Journey Terminal de Coddy — leçon 46 sur 82.

La commande grep devient particulièrement puissante lorsqu'elle est combinée avec des pipes. Au lieu de rechercher dans un fichier, vous pouvez filtrer la sortie de n'importe quelle commande pour trouver exactement ce dont vous avez besoin.

Imaginez que vous souhaitiez trouver un fichier spécifique dans le listing d'un répertoire :

ls -l | grep "report"

Cela liste tous les fichiers en détail, puis filtre pour ne montrer que les lignes contenant «report». Vous obtenez des résultats ciblés sans devoir examiner manuellement tout le contenu.

Le tuyautage vers grep fonctionne avec toute commande qui produit une sortie texte. Pour trouver les processus en cours liés à un programme spécifique :

ps aux | grep "python"

Vous pouvez également chaîner grep avec d'autres commandes que vous avez apprises. Pour compter le nombre de lignes contenant un mot spécifique :

cat logfile.txt | grep "error" | wc -l

Cela lit le fichier, filtre les lignes contenant «error», puis les compte. Les options de grep que vous avez apprises plus tôt fonctionnent de la même manière dans les pipes — utilisez -i pour une correspondance insensible à la casse ou -v pour exclure les correspondances.

challenge icon

Défi

Facile

Le fichier access.log contient les enregistrements d'accès du serveur web. Utilisez un pipe pour filtrer et compter combien de requêtes ont abouti à un code d'erreur de statut 500.

Exécutez une seule commande qui :

  • Utilise cat pour lire access.log
  • Pipe vers grep pour filtrer les lignes contenant 500
  • Pipe vers wc -l pour compter les lignes correspondantes

Indice : Chaînez les trois commandes ensemble en utilisant le symbole |. La commande grep filtre la sortie, et wc -l compte les lignes restantes.

Aide-mémoire

La commande grep peut filtrer la sortie d'autres commandes en utilisant des pipes (|).

Filtrer les listes de répertoires :

ls -l | grep "report"

Filtrer les processus en cours :

ps aux | grep "python"

Chaîner plusieurs commandes pour filtrer et compter :

cat logfile.txt | grep "error" | wc -l

Tous les drapeaux de grep fonctionnent dans les pipes, tels que -i pour une correspondance insensible à la casse et -v pour exclure les correspondances.

Essayez vous-même

Terminal
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Les fondamentaux