Enchaîner grep, sort et wc en une seule commande
Comptez les lignes correspondantes et filtrez une liste triée en combinant cat, grep, sort et wc.
Démarrer la leçon interactiveUne fois que grep, sort et wc ont chacun un sens, le vrai travail consiste à les composer. Une seule ligne peut extraire les erreurs d'un journal et les compter, ou trier une liste d'utilisateurs et ne garder que les noms correspondants. Il n'y a pas de commande « ninja » spéciale — seulement des tubes.
Compter les lignes correspondantes
Lisez le fichier, gardez le motif, comptez ce qui reste :
Filtrez un fichier, puis comptez ou triez !
Combien de lignes ERROR ?
grep sans wc affiche encore les lignes correspondantes. Ajoutez wc -l quand vous n'avez besoin que du nombre.
Trier d'abord, puis filtrer
Parfois l'ordre compte avant la recherche. Triez le fichier, puis gardez la ligne qui vous intéresse :
printf '%s\n' 'user: guest' 'user: root' 'user: admin' > logs.txt
cat logs.txt | sort | grep 'root'
Lisez de gauche à droite : produire des lignes, les transformer, puis garder ou compter. Si un tube a l'air faux, lancez chaque morceau seul jusqu'à ce que la sortie corresponde à ce que la commande suivante attend.
Vérification des connaissances
1 / 3Que renvoie cat data.log | grep 'ERROR' | wc -l ?
Références
Ces liens de documentation fournissent des informations fiables sur les commandes utilisées dans cet article.
À suivre
Utilisez chown pour changer le propriétaire et le groupe d’un fichier ou répertoire, vérifier le résultat et éviter les récursions risquées.