La commande grep

La commande grep permet l'utilisation d'expressions régulières normalisées par POSIX.

Par défaut, la commande grep utilise les ERb.

Associée à l'option -E, elle utilise les ERe.

Exemples :

Avec le fichier depts2012.txt (téléchargeable sur le site de l'INSEE à cette adresse : http://www.insee.fr/fr/methodes/nomenclatures/cog/telechargement.asp)

$ head depts2012.txt && tail depts2012.txt
REGION  DEP     CHEFLIEU        TNCC    NCC     NCCENR
82      01      01053   5       AIN     Ain
22      02      02408   5       AISNE   Aisne
83      03      03190   5       ALLIER  Allier
93      04      04070   4       ALPES-DE-HAUTE-PROVENCE Alpes-de-Haute-Provence
93      05      05061   4       HAUTES-ALPES    Hautes-Alpes
93      06      06088   4       ALPES-MARITIMES Alpes-Maritimes
82      07      07186   5       ARDECHE Ardèche
21      08      08105   4       ARDENNES        Ardennes
73      09      09122   5       ARIEGE  Ariège
11      91      91228   5       ESSONNE Essonne
11      92      92050   4       HAUTS-DE-SEINE  Hauts-de-Seine
..............
11      93      93008   3       SEINE-SAINT-DENIS       Seine-Saint-Denis
11      94      94028   2       VAL-DE-MARNE    Val-de-Marne
11      95      95500   2       VAL-D'OISE      Val-d'Oise
01      971     97105   3       GUADELOUPE      Guadeloupe
02      972     97209   3       MARTINIQUE      Martinique
03      973     97302   3       GUYANE  Guyane
04      974     97411   0       LA REUNION      La Réunion
06      976     97608   0       MAYOTTE Mayotte
$

Rechercher la chaine "loire-atlantique" sans tenir compte de la casse :

$ cat depts2012.txt | grep -i 'loire-atlantique'
52      44      44109   3       LOIRE-ATLANTIQUE        Loire-Atlantique
$

Rechercher les lignes commançant par 21 :

$ cat depts2012.txt | grep '^21'
21      08      08105   4       ARDENNES        Ardennes
21      10      10387   5       AUBE    Aube
21      51      51108   3       MARNE   Marne
21      52      52121   3       HAUTE-MARNE     Haute-Marne
$

Rechercher les lignes se terminant par "ique" :

$ cat depts2012.txt | grep -i 'ique$'
52      44      44109   3       LOIRE-ATLANTIQUE        Loire-Atlantique
02      972     97209   3       MARTINIQUE      Martinique
$

Rechercher les lignes ayant 2 occurences de la lettre "s" :

$ cat depts2012.txt | grep -i 'ss'
11      91      91228   5       ESSONNE Essonne
$

Idem mais avec une ERb :

$ cat depts2012.txt | grep -i 's\{2\}'
11      91      91228   5       ESSONNE Essonne
$

Idem mais avec une ERe :

$ cat depts2012.txt | grep -iE 's{2}'
11      91      91228   5       ESSONNE Essonne
$

Rechercher les lignes ayant un tiret (-) :

$ cat depts2012.txt | grep '\-'
93      04      04070   4       ALPES-DE-HAUTE-PROVENCE Alpes-de-Haute-Provence
93      05      05061   4       HAUTES-ALPES    Hautes-Alpes
93      06      06088   4       ALPES-MARITIMES Alpes-Maritimes
93      13      13055   4       BOUCHES-DU-RHONE        Bouches-du-Rhone
$

Rechercher les lignes contenant les chaines "loir" ou "tique" (peu importe la casse) :

$ cat depts2012.txt | grep -iE 'loir|tique'
24      28      28085   1       EURE-ET-LOIR    Eure-et-Loir
24      37      37261   1       INDRE-ET-LOIRE  Indre-et-Loire
24      41      41018   0       LOIR-ET-CHER    Loir-et-Cher
82      42      42218   3       LOIRE   Loire
83      43      43157   3       HAUTE-LOIRE     Haute-Loire
52      44      44109   3       LOIRE-ATLANTIQUE        Loire-Atlantique
24      45      45234   2       LOIRET  Loiret
52      49      49007   0       MAINE-ET-LOIRE  Maine-et-Loire
72      64      64445   4       PYRENEES-ATLANTIQUES    Pyrenees-Atlantiques
26      71      71270   0       SAONE-ET-LOIRE  Saone-et-Loire
$

Etiquettes: 

Ajouter un commentaire

Filtered HTML

  • Les adresses de pages web et de messagerie électronique sont transformées en liens automatiquement.
  • Tags HTML autorisés : <a> <em> <strong> <cite> <blockquote> <code> <ul> <ol> <li> <dl> <dt> <dd>
  • Les lignes et les paragraphes vont à la ligne automatiquement.

Plain text

  • Aucune balise HTML autorisée.
  • Les adresses de pages web et de messagerie électronique sont transformées en liens automatiquement.
  • Les lignes et les paragraphes vont à la ligne automatiquement.
CAPTCHA
Cette question permet de s'assurer que vous êtes un utilisateur humain et non un logiciel automatisé de pollupostage.
CAPTCHA visuel
Entrez les caractères (sans espace) affichés dans l'image.