1er commit
De la docs au format Mkdocs
This commit is contained in:
88
docs/Linux/grep.md
Normal file
88
docs/Linux/grep.md
Normal file
@@ -0,0 +1,88 @@
|
||||
# grep
|
||||
|
||||
|
||||
|
||||
La commande **grep** permet de rechercher une chaîne de caractères dans un fichier.
|
||||
|
||||
Options:
|
||||
|
||||
```bash
|
||||
-i (ignore case) insensible à la casse
|
||||
-v affiche les lignes ne contenant pas la chaîne
|
||||
-c (count) compte le nombre de lignes contenant la chaîne
|
||||
-n (number) chaque ligne contenant la chaîne est numérotée
|
||||
-x ligne correspondant exactement à la chaîne
|
||||
-l affiche le nom des fichiers qui contiennent la chaîne
|
||||
-C (context) fait figurer les deux lignes qui précèdent et suivent la ligne où figure le mot recherché
|
||||
-Ax (after) affiche les x lignes qui suivent la ligne où figure le mot recherché
|
||||
-Bx (before) affiche les x lignes qui précèdent la ligne où figure le mot recherché
|
||||
-r (recursif)
|
||||
-w mot exact
|
||||
```
|
||||
|
||||
|
||||
|
||||
<u>Chercher dans un dossier (récursif)</u>:
|
||||
|
||||
```bash
|
||||
grep -r "brew" ./docs/
|
||||
./docs//Divers/plex.md: $ brew install mono
|
||||
|
||||
# N'affiche que les fichiers (-l):
|
||||
grep -l -r "brew" ./docs/
|
||||
./docs//Divers/plex.md
|
||||
./docs//macos/node-js.md
|
||||
```
|
||||
|
||||
|
||||
|
||||
<u>Regex:</u>
|
||||
|
||||
```bash
|
||||
grep -E ^a toto.txt
|
||||
```
|
||||
|
||||
L'option -E est optionnelle (compatibilité).
|
||||
|
||||
| Caractère spécial | Signification |
|
||||
| ----------------- | ------------------------------------------------------------ |
|
||||
| `.` | Caractère quelconque |
|
||||
| `^` | Début de ligne |
|
||||
| `$` | Fin de ligne |
|
||||
| `[]` | Un des caractères entre les crochets |
|
||||
| `?` | L'élément précédent est optionnel (peut être présent 0 ou 1 fois) |
|
||||
| `*` | L'élément précédent peut être présent 0, 1 ou plusieurs fois |
|
||||
| `+` | L'élément précédent doit être présent 1 ou plusieurs fois |
|
||||
| `|` | Ou |
|
||||
| `()` | Groupement d'expressions |
|
||||
|
||||
Lignes commençant par les caractères compris entre a et d:
|
||||
|
||||
```bash
|
||||
grep ^[a-d] fichier.txt
|
||||
```
|
||||
|
||||
|
||||
|
||||
Rechercher plusieurs chaines:
|
||||
|
||||
```bash
|
||||
grep -E 'tata|toto' fichier.txt
|
||||
```
|
||||
|
||||
ou passer un fichier de motifs à grep:
|
||||
|
||||
```bash
|
||||
cat motif.txt
|
||||
|
||||
grep -f "motif.txt" fichier.txt
|
||||
```
|
||||
|
||||
|
||||
|
||||
Afficher les 5 lignes qui suivent le motif recherché:
|
||||
|
||||
```bash
|
||||
grep 'toto' -A5 fichier.txt
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user