# grep

# Exercices sur `grep`

Ces exercices sont des questions de cours : les solutions se trouvent toutes dans les pages de man des commandes en question. On suppose donc connues les commandes de less, qui servent à se déplacer dans les pages de man... Testez les commandes sur des fichiers et répertoires d'essai pour vous faire la main et comprendre ce qui se passe. Pour une présentation élémentaire de `grep`, vous pouvez aller lire le cours.

Pour voir la solution, cliquer sur le bouton &icone.solution;.

## Les options de `grep`

1. &icone.solution; Quelles sont les options de `grep` qui permettent d'obtenir des lignes de contexte (qui précèdent et/ou suivent la ligne où figure le mot) ?
2. &icone.solution; Comment faire apparaître le numéro de la ligne où figure le mot recherché ? Que se passe-t-il quand on demande également des lignes de contexte ?
3. &icone.solution; Comment faire pour afficher le nombre d'occurences du mot recherché ?
4. &icone.solution; Comment faire pour que `grep` ignore la casse des caractères (différence entre majuscules et minuscules) dans sa recherche ?
5. &icone.solution; Comment faire pour faire apparaître non pas les lignes où figurent le mot, mais les noms des fichiers ?
6. &icone.solution; Comment faire apparaître les lignes où ne figurent pas le mot recherché ?
7. &icone.solution; Comment faire apparaître les noms des fichiers ne contenant pas le mot recherché ?
8. &icone.solution; Comment faire pour que `grep` ne recherche que les lignes où figure le mot tel quel, et non pas ses variantes ? Par exemple : on cherche le mot «travail», mais pas «travailleur» ou «travailler».
9. &icone.solution; Comment faire pour chercher plusieurs mots à la fois en faisant apparaître les numéros des lignes ?

## Introduction aux expressions régulières

1. &icone.solution; Chercher toutes les lignes commençant par «a» ou «A».
2. &icone.solution; Chercher toutes les lignes finissant par «rs».
3. &icone.solution; Chercher toutes les lignes contenant au moins un chiffre.
4. &icone.solution; Chercher toutes les lignes commençant par une majuscule.
5. &icone.solution; Chercher toutes les lignes commençant par «B», «E» ou «Q».
6. &icone.solution; Chercher toutes les lignes finissant par un point d'exclamation.
7. &icone.solution; Chercher toutes les lignes ne finissant pas par un signe de ponctuation (point, virgule, point-virgule, deux-points, point d'interrogation, point d'exclamation).
8. &icone.solution; Chercher tous les mots contenant un «r» précédé de n'importe quelle lettre majuscule ou minuscule.
9. &icone.solution; Chercher tous les mots dont la seconde lettre est un «r».

Auteur : Émilia Robin, Joël Riou.