Options principales
Combinez les différentes options de la commande `grep` pour rechercher le texte souhaité.
1. Recherche de base
2. Options de recherche
3. Options d'affichage
4. Recherche récursive
Commande générée :
Essayez de combiner les commandes.
Description:
`grep` Exécute la commande.
Essayez d'exécuter virtuellement les commandes avec l'IA en combinant les options ci-dessus.
Bases des expressions régulières
La commande `grep` prend en charge les expressions régulières pour une recherche de texte puissante. L'utilisation d'expressions régulières permet de trouver facilement des motifs complexes.
| Caractère | Description | Exemple |
|---|---|---|
| . | Tout caractère unique (sauf la nouvelle ligne) |
a.b (acb, amb, etc.)
|
| * | Le caractère précédent répété 0 fois ou plus |
ab*c (ac, abc, abbc, etc.)
|
| + | Le caractère précédent répété 1 fois ou plus |
ab+c (abc, abbc, etc.)
|
| ? | Le caractère précédent apparaît 0 ou 1 fois |
ab?c (ac, abc)
|
| ^ | Début de ligne |
^start (lignes commençant par 'start')
|
| $ | Fin de ligne |
end$ (lignes se terminant par 'end')
|
| [abc] | Un des caractères entre parenthèses |
[aeiou] (voyelles)
|
| [a-z] | Un des caractères de la plage |
[0-9] (chiffre)
|
| [^abc] | Un caractère qui n'est pas entre parenthèses |
[^0-9] (caractère non numérique)
|
| \b | Limite de mot |
\bword\b (le mot exact 'word')
|
| | | Opérateur OU (un des deux motifs) |
cat|dog ('cat' ou 'dog')
|
Expressions régulières de base (BRE) et étendues (ERE)
grep utilise par défaut les BRE. Pour utiliser des caractères comme +, ?, |, (, ) avec une signification spéciale, vous devez les faire précéder d'une barre oblique inversée (\). L'option -E active le mode ERE, permettant d'utiliser ces caractères sans barre oblique inversée. L'option -P offre des PCRE encore plus puissantes.
Exemples d'utilisation
Entraînez-vous à rechercher du texte avec `grep` à l'aide de ces exemples pratiques.
Rechercher 'error' dans un fichier journal
grep 'error' /var/log/syslog
Affiche toutes les lignes contenant la chaîne 'error' dans le fichier `syslog`.
Rechercher 'failed' sans distinction de casse et afficher les numéros de ligne
grep -in 'failed' /var/log/auth.log
Recherche 'failed' sans tenir compte de la casse et affiche le résultat avec les numéros de ligne.
Afficher uniquement les lignes qui ne contiennent pas un motif spécifique
grep -v '^#' /etc/nginx/nginx.conf
Affiche les lignes du fichier `nginx.conf` en excluant celles qui commencent par un commentaire (#).
Rechercher 'server_name' dans les fichiers '.conf' y compris les sous-répertoires
grep -r 'server_name' *.conf
Recherche récursivement le motif 'server_name' dans les fichiers avec l'extension '.conf' dans le répertoire actuel et tous ses sous-répertoires.
Trouver un processus spécifique (combinaison ps et pipe)
ps aux | grep apache2
Filtre la sortie de la commande `ps aux` pour afficher uniquement les processus liés à 'apache2'.
Rechercher 'warning' ou 'critical' dans plusieurs fichiers
grep -E 'warning|critical' /var/log/syslog /var/log/kern.log
Utilise l'opérateur OU (|) des expressions régulières pour rechercher les messages 'warning' ou 'critical' dans plusieurs fichiers journaux.