Notes sur grep, egrep et pgrep
1. grep : la base du filtrage de texte
grep = Global Regular Expression Print
Syntaxe
Exemples
- Chercher le mot
hellodansfichier.txt:
- Ignorer la casse :
- Afficher les numéros de lignes :
- Chercher récursivement dans un dossier :
- Exclure un motif :
- Afficher seulement le nombre de lignes correspondantes :
Options utiles
-w→ correspond au mot entier
Ne matchera que "root" comme mot complet, pas "rooter".-l→ affiche juste les noms de fichiers contenant le motif
-E→ active les expressions régulières étendues (aliasegrep)
Cherche "chat" ou "chien" dans le fichier.-o→ affiche seulement la partie du texte correspondant au motif Affiche uniquement les nombres trouvés dans le fichier.
Exercices Linux
- Chercher toutes les occurrences du mot "error" dans
/var/log/syslog. - Compter le nombre de lignes contenant "root" dans
/etc/passwd. - Afficher les lignes contenant "bash" mais pas "sh" dans un fichier donné.
2. egrep : grep "amélioré" pour les regex
egrep = Extended GREP
Syntaxe
Exemples
- Chercher
chatouchien:
- Chercher une ligne qui commence par une majuscule :
- Chercher une ligne qui se termine par un chiffre :
⚠️ Depuis quelques années,
egrepest considéré comme obsolète,grep -Efait exactement la même chose.
Exercices Linux
- Chercher toutes les lignes dans
/var/log/auth.logqui contiennent soit "Failed" soit "Accepted". - Afficher les lignes de
/etc/passwdqui commencent par une lettre majuscule. - Chercher les lignes dans un fichier qui contiennent exactement 3 chiffres consécutifs.
3. pgrep : recherche de processus
pgrep = Process GREP
Syntaxe
Exemples
- Trouver tous les processus
ssh:
- Afficher PID et nom du processus :
- Chercher un processus précis appartenant à un utilisateur :
- Exclure certains processus avec
-v:
- Combiner avec
killpour stopper un processus :
- Chercher des processus et afficher leur commande complète :
Exercices Linux
- Lister tous les processus de l'utilisateur courant.
- Trouver le PID du processus
cronet l'arrêter. - Combiner
pgrepetkillpour arrêter tous les processuspython.
Résumé rapide
| Commande | Usage principal | Astuce | |
|---|---|---|---|
| grep | Filtrer du texte | -i pour ignorer la casse, -v pour inverser, -o pour partie correspondante |
|
| egrep | grep avec regex étendues | grep -E remplace egrep, pratique pour |, +, () |
|
| pgrep | Chercher des processus | -l pour nom + PID, -u pour utilisateur, -a pour commande complète |