Loading

NOM

       grep,  egrep,  fgrep,  rgrep  -  Afficher les lignes correspondant à un
       motif donné.

SYNOPSIS

       grep [OPTIONS] MOTIF [FICHIER...]
       grep [OPTIONS] [-e MOTIF | -f FICHIER] [FICHIER...]

       grep recherche dans les FICHIERs indiqués les lignes correspondant à un
       certain  MOTIF. Par défaut, grep affiche les lignes qui contiennent une
       correspondance au motif. L’entrée standard est lue si FICHIER est  omis
       ou si FICHIER vaut « - ».

       Trois variantes du programme sont disponibles : egrep, fgrep et rgrep ;
       egrep est identique à grep -E, fgrep est identique à grep -F  et  rgrep
       est   identique  à  grep -r.  L’appel  direct  à  egrep  ou  fgrep  est
       déconseillé, mais est toujours possible pour  permettre  à  d’anciennes
       applications qui les utilisent de fonctionner sans modification.

OPTIONS

   Informations générales sur le programme
       --help Afficher  un  bref  message d’aide pour l’utilisation qui résume
              les options en ligne de commande et l’adresse pour remonter  des
              bogues, puis quitter.

       -V, --version
              Afficher le numéro de version de grep sur la sortie standard. Ce
              numéro de version devra être inclus dans tous  les  rapports  de
              bogues (voir ci-dessous).

   Sélection des correspondances
       -E, --extended-regexp
              Interpréter  le  MOTIF  comme une expression rationnelle étendue
              (ERE, voir ci-dessous). (-E est une spécification POSIX.)

       -F, --fixed-strings
              Interpréter le MOTIF comme une liste de chaînes  de  caractères,
              séparées par des sauts de ligne. Chacune d’entre elles doit être
              recherchée. (-F est une spécification POSIX.)

       -G, --basic-regexp
              Interpréter le MOTIF comme  une  expression  rationnelle  simple
              (BRE, voir ci-dessous). C’est le comportement par défaut.

       -P, --perl-regexp
              Interpréter  le  MOTIF  comme  une  expression rationnelle Perl.
              Cette option est expérimentale et grep -P pourrait signaler  des
              fonctionnalités non implémentées.

   Contrôle de concordance
       -e MOTIF, --regexp=MOTIF
              Utiliser  le  MOTIF  comme  motif.  Ceci  peut être utilisé pour
              spécifier des motifs de  recherche  multiples  ou  protéger  les
              motifs  commençant par un tiret « - ». (-e est une spécification
              POSIX.)

       -f FICHIER, --file=FICHIER
              Lire les motifs dans le FICHIER indiqué, un motif par ligne.  Un
              fichier   vide  ne  contient  aucun  motif,  si  bien  qu’aucune
              concordance n’est trouvée. (-f est une spécification POSIX.)

       -i, --ignore-case
              Ignorer la casse aussi bien dans le MOTIF que dans les fichiers.
              (-i est une spécification POSIX.)

       -v, --invert-match
              Inverser la mise en concordance, pour sélectionner les lignes ne
              correspondant pas au motif. (-v est une spécification POSIX.)

       -w, --word-regexp
              Ne  sélectionner  que  les  lignes  contenant  des  concordances
              formant  des  mots  complets. La sous-chaîne correspondante doit
              donc soit se trouver au début de la ligne,  soit  être  précédée
              d’un  caractère ne pouvant entrer dans la constitution d’un mot.
              De même, elle doit soit se trouver à la fin de  la  ligne,  soit
              être   suivie  par  un  caractère  ne  pouvant  entrer  dans  la
              constitution d’un mot. Les caractères composant  les  mots  sont
              les lettres, les chiffres et le souligné « _ ».

       -x, --line-regexp
              Ne  sélectionner  que  les concordances qui concernent une ligne
              entière. (-x est une spécification POSIX.)

       -y     Synonyme obsolète de -i.

   Contrôle général de laffichage
       -c, --count
              Ne pas afficher les résultats normaux. À la place,  afficher  un
              décompte  des lignes correspondant au motif pour chaque fichier.
              Avec l’option -v, --invert-match (voir ci-dessous), afficher  le
              nombre  de  lignes  ne  contenant  pas  le  motif.  (-c  est une
              spécification POSIX.)

       --color[=QUAND], --colour[=QUAND]
              Encadre les chaînes (non vides) des correspondances, les  lignes
              qui correspondent, les lignes de contexte, les noms de fichiers,
              les numéros de lignes et les séparateurs  (pour  les  champs  et
              groupes  de lignes de contexte) avec des séquences d’échappement
              pour les afficher en couleur sur le terminal. Les couleurs  sont
              définies par la variable d’environnement GREP_COLORS. L’ancienne
              variable d’environnement GREP_COLOR  est  toujours  gérée,  mais
              elle a une priorité inférieure pour décider de la configuration.
              QUAND vaut never (jamais), always (toujours) ou auto.

       -L, --files-without-match
              Ne pas afficher les résultats normaux. À la place,  indiquer  le
              nom  des  fichiers  pour  lesquels  aucun  résultat n’aurait été
              affiché. La recherche dans chaque fichier cesse dès la  première
              concordance.

       -l, --files-with-matches
              Ne  pas  afficher les résultats normaux. À la place, indiquer le
              nom des  fichiers  pour  lesquels  des  résultats  auraient  été
              affichés. La recherche dans chaque fichier cesse dès la première
              concordance. (-l est spécifiée dans POSIX)

       -m N, --max-count=N
              Arrêter  de  lire  un  fichier  après  avoir  trouvé  N   lignes
              concordantes.  Si l’entrée est l’entrée standard prise depuis un
              fichier normal, et si N lignes qui correspondent sont affichées,
              grep  s’assure  avant  de  s’arrêter  que  l’entrée standard est
              positionnée juste après la dernière  ligne  qui  concorde,  même
              s’il  y  a  des lignes de contexte supplémentaires ensuite. Ceci
              permet au processus d’appel de redémarrer une  recherche.  Quand
              grep  s’arrête  après N lignes de concordance, il affiche toutes
              les lignes  de  contexte.  Quand  l’option  -c  ou  --count  est
              utilisée, grep n’affiche pas plus de N lignes. Quand l’option -v
              ou --invert-match est aussi utilisée, grep s’arrête après  avoir
              affiché N lignes qui ne contiennent pas le motif.

       -o, --only-matching
              N’afficher  que  les  parties  qui correspondent (et ne sont pas
              vide) des lignes qui correspondent, chaque partie étant affichée
              sur une ligne séparée.

       -q, --quiet, --silent
              Ne pas afficher les résultats normaux. Sortir immédiatement avec
              un code de  retour  égal  à  zéro  dès  qu’une  concordance  est
              trouvée,  même  si une erreur est détectée. Voyez aussi l’option
              -s ou --no-messages. (-q est spécifiée dans POSIX)

       -s, --no-messages
              Ne pas afficher les messages d’erreur  concernant  les  fichiers
              inexistants ou illisibles. Note de portabilité : à la différence
              du grep de GNU, le grep  de  la  7e  édition  d’Unix  n’est  pas
              conforme  au  standard  POSIX, car il n’a pas d’option -q et son
              option -s agit comme l’option -q du grep de GNU. La version  USG
              de  grep n’avait pas non plus d’option -q, mais son option -s se
              comportait comme celle de la version GNU de  grep.  Les  scripts
              shell  destinés  à  être  utilisés  avec  le  grep  traditionnel
              devraient éviter d’utiliser les options -q et -s,  et  devraient
              plutôt  rediriger  la  sortie  vers /dev/null. (-s est spécifiée
              dans POSIX)

   Contrôle du préfixe à laffichage
       -b, --byte-offset
              Afficher l’emplacement dans le fichier (qui commence  à  l’octet
              0)  devant  chaque  ligne de sortie. Si -o (--only-matching) est
              spécifiée, afficher l’emplacement de la partie qui correspond.

       -H, --with-filename
              Afficher le nom du fichier pour chaque correspondance. C’est  le
              comportement  par  défaut  quand  la recherche est effectuée sur
              plusieurs fichiers.

       -h, --no-filename
              Ne pas afficher le nom des fichiers  au  début  des  lignes  qui
              correspondent.  C’est  le comportement par défaut quand il n’y a
              qu’un fichier (ou que l’entrée standard) dans  lequel  effectuer
              la recherche.

       --label=TIQUETTE
              Afficher  les  données  provenant  de l’entrée standard comme si
              elles provenaient du fichier TIQUETTE.  C’est  particulièrement
              utile pour des outils comme zgrep, par exemple : gzip -cd foo.gz
              |grep --label=truc quelquechose

       -n, --line-number
              Préfixer chaque ligne de sortie par le numéro de la  ligne  dans
              le  fichier.  La  numérotation  commence  à  la ligne 1. (-n est
              spécifiée dans POSIX)

       -T, --initial-tab
              S’assurer que le premier caractère correspondant au contenu  est
              placé  à  un  emplacement  d’arrêt  d’une  tabulation,  pour que
              l’alignement des tabulations paraisse  normal.  Ceci  est  utile
              avec les options qui utilisent un préfixe avant le contenu : -H,
              -n  et -b. Pour augmenter la probabilité que toutes  les  lignes
              d’un  fichier  commencent à la même colonne, cela force aussi le
              numéro de ligne et l’emplacement (s’ils sont  présents)  à  être
              affichés dans un champ de taille minimale.

       -u, --unix-byte-offsets
              Afficher la position relative en octets dans le style Unix. Avec
              cette option, grep affiche la position relative en octets  comme
              si   le  fichier  était  un  fichier  de  texte  de  type  Unix,
              c’est-à-dire avec  les  caractères  CR  supprimés.  Ceci  permet
              d’avoir  un résultat identique à celui retourné par grep sur une
              machine Unix. Cette option n’a d’effet que si elle est  utilisée
              conjointement  avec  l’option  -b,  et sur une machine MS-DOS ou
              MS-Windows.

       -Z, --null
              Afficher un octet nul (le caractère ASCII NUL)  à  la  place  du
              caractère  qui  suit d’ordinaire le nom du fichier. Par exemple,
              grep -lZ affiche un octet nul après chaque nom de fichier, à  la
              place  du saut de ligne. Cette option permet de rendre la sortie
              non ambiguë, même quand les noms  de  fichiers  contiennent  des
              caractères  inhabituels,  comme des sauts de ligne. Cette option
              peut être utilisée avec des commandes telles que  find  -print0,
              perl -0, sort -z, et xargs -0 pour traiter des fichiers avec des
              noms quelconques, même ceux contenant des sauts de ligne.

   Contrôle des lignes de contexte
       -A N, --after-context=N
              Afficher les N lignes qui suivent celle contenant le motif.  Une
              ligne  contenant  --  est  insérée entre les groupes contigus de
              correspondances. Avec l’option -o  ou  --only-matching,  ça  n’a
              aucun effet et un avertissement est affiché.

       -B N, --before-context=N
              Afficher les N lignes qui précèdent celle qui contient le motif.
              Une ligne contenant -- est insérée entre les groupes contigus de
              correspondances.  Avec  l’option  -o  ou --only-matching, ça n’a
              aucun effet et un avertissement est affiché.

       -C N, -N, --context=N
              Afficher N lignes  de  contexte.  Une  ligne  contenant  --  est
              insérée  entre  les  groupes  contigus  de correspondances. Avec
              l’option -o  ou  --only-matching,  ça  n’a  aucun  effet  et  un
              avertissement est affiché.

   Sélection de fichiers ou répertoires
       -a, --text
              Traiter  un  fichier  binaire  comme  s’il s’agissait de texte ;
              c’est l’équivalent de l’option --binary-files=text.

       --binary-files=TYPE
              Si les premiers octets d’un fichier indiquent qu’il contient des
              données  binaires,  considérer  que le fichier est de type TYPE.
              Par défaut, TYPE est binary, et grep affiche un message uniligne
              disant  que  le  fichier  binaire contient le motif ou n’affiche
              rien s’il n’y a pas concordance. Si TYPE est without-match, grep
              considère  qu’un  fichier  binaire  ne  concorde  jamais.  C’est
              équivalent à l’option -I. Si  TYPE  est  text,  grep  traite  un
              fichier  binaire comme du texte. C’est équivalent à l’option -a.
              Attention : grep --binary-files=text peut afficher  des  données
              binaires   indésirables,  qui  peuvent  avoir  des  conséquences
              fâcheuses si la sortie est envoyée vers un  terminal  et  si  le
              pilote de celui-ci l’interprète en tant que commandes.

       -D ACTION, --devices=ACTION
              Si  le  fichier  est  un  périphérique,  une FIFO ou une socket,
              utiliser ACTION dessus. Par défaut, ACTION est  read  (lecture),
              ce  qui  signifie  que  les  périphériques  sont  lus  comme des
              fichiers normaux. Si ACTION est  skip,  les  périphériques  sont
              ignorés en silence.

       -d ACTION, --directories=ACTION
              Si  le  fichier  est un répertoire, utiliser ACTION. Par défaut,
              ACTION est read, ce qui signifie que les  répertoires  sont  lus
              comme  des fichiers normaux. Si ACTION est skip, les répertoires
              sont ignorés et aucun  message  n’est  affiché.  Si  ACTION  est
              recurse,  grep  lit  tous  les  fichiers  présents  dans  chaque
              répertoire, récursivement. C’est équivalent à l’option -r.

       --exclude=MOTIF
              Sauter les fichiers dont le nom de fichier  correspond  à  MOTIF
              (en  utilisant  une  correspondance  avec  joker).  Un  motif de
              fichier peut utiliser les jokers *,  ?,  and  [...]  et  \  pour
              l’échappement  des  caractères  littéraux joker ou barre oblique
              inverse.

       --exclude-from=FICHIER
              Sauter les fichiers dont le nom de fichier correspond à  un  des
              motifs  contenus  dans le FICHIER (en utilisant les jokers comme
              décrit pour --exclude).

       --exclude-dir=RP
              Exclure les répertoires  qui  correspondent  au  motif  RP  des
              recherches récursives.

       -I     Traiter  un  fichier  binaire  comme  s’il  ne  contenait aucune
              concordance ;      c’est       équivalent       à       l’option
              --binary-files=without-match.

       --include=MOTIF
              Ne  chercher  que  dans  les  fichiers  dont  le  nom de fichier
              correspond à MOTIF (en utilisant les jokers, comme  décrit  pour
              --exclude).

       -R, -r, --recursive
              Lire  récursivement  tous  les  fichiers à l’intérieur de chaque
              répertoire. C’est l’équivalent de l’option -d recurse.

   Autres options
       --line-buffered
              Mettre les lignes de sortie dans un tampon.  Ceci  peut  réduire
              les performances.

       --mmap Si  possible, utiliser la fonction système mmap(2) pour lire les
              données  en  entrée  plutôt  que  la  fonction  système  read(2)
              utilisée par défaut. Dans certaines circonstances, --mmap permet
              de meilleures performances.  Cependant,  --mmap  peut  avoir  un
              comportement  aléatoire (y compris la génération d’un core dump)
              si un fichier voit sa taille réduite pendant que grep le lit, ou
              si une erreur d’entrée-sortie survient.

       -U, --binary
              Traiter  les fichiers comme s’ils étaient des fichiers binaires.
              Par défaut, sous MS-DOS et MS-Windows, grep détermine le type de
              fichier  en regardant le contenu des 32 premiers kilo-octets. Si
              grep décide que le fichier est un fichier de  texte,  il  enlève
              les  retours  chariot  (CR) du contenu du fichier original (afin
              que les expressions avec  ^  et  $  fonctionnent  correctement).
              L’option  -U  modifie  ce  comportement,  tous les fichiers sont
              alors lus et traités tels quels. Si le fichier est un fichier de
              texte   avec  des  paires  CR-LF  en  fin  de  ligne,  certaines
              expressions rationnelles peuvent échouer. Cette option n’a aucun
              effet sur des plates-formes autres que MS-DOS et MS-Windows.

       -z, --null-data
              Considérer  que  l’entrée  est  un  ensemble  de lignes, chacune
              terminée par un octet nul (le caractère ASCII NUL) au lieu  d’un
              saut  de  ligne.  Comme l’option -Z ou --null, cette option peut
              être combinée avec des commandes comme sort -z pour traiter  des
              fichiers ayant un nom quelconque.

EXPRESSIONS RATIONNELLES

       Une  expression  rationnelle  est  un  motif  qui  permet de décrire un
       ensemble de chaînes.  Les  expressions  rationnelles  sont  construites
       comme   des   opérations  arithmétiques ;  elles  utilisent  différents
       opérateurs pour combiner des expressions plus petites.

       Grep gère deux styles de syntaxe pour  les  expressions  rationnelles :
       «simple »  (basic)  et  « étendue »  (extended). Dans la version GNU de
       grep, il n’y a pas de différence dans les  fonctionnalités  disponibles
       pour  ces  deux  styles. Dans d’autres implémentations, les expressions
       rationnelles simples sont moins complètes.  La  description  ci-dessous
       correspond   aux   expressions   étendues,  les  différences  avec  les
       expressions simples étant résumées ensuite.

       Les   briques   élémentaires   sont   les   expressions    rationnelles
       correspondant à un seul caractère. La plupart des caractères, y compris
       les lettres et les chiffres, constituent des  expressions  rationnelles
       et   concordent   avec   eux-mêmes.   Tout   méta-caractère  ayant  une
       signification particulière doit être protégé  en  le  faisant  précéder
       d’une contre-oblique (backslash).

       Le point . correspond à n’importe quel caractère.

   Classes de caractères et expressions entre crochets
       Une  liste  de  caractères,  encadrée  par  [  et  ]  peut être mise en
       correspondance avec n’importe quel caractère appartenant à la liste. Si
       le  premier caractère de la liste est l’accent circonflexe « ^ », alors
       la mise en correspondance se fait avec n’importe quel caractère  absent
       de   la  liste.  Par  exemple,  l’expression  rationnelle  [0123456789]
       concorde avec n’importe quel chiffre.

       Entre ces crochets, un intervalle de caractères peut  être  indiqué  en
       donnant  le  premier  et le dernier caractère, séparés par un tiret. il
       correspond à n’importe quel caractère compris entre le  premier  et  le
       dernier  caractère  (ceux-ci  inclus), l’ordre des caractères dépendant
       des paramètres régionaux (locale, en anglais) en cours. Ainsi, avec  la
       valeur par défaut (« C »), [a-d] est équivalent à [abcd]. Avec beaucoup
       de paramètres régionaux, les caractères sont triés en  suivant  l’ordre
       des dictionnaires, et [a-d] n’est alors pas équivalent à [abcd], mais à
       [aBbCcDd], par exemple. Pour  que  ces  listes  aient  le  comportement
       habituel  de « C », vous pouvez positionner la variable d’environnement
       LC_ALL à la valeur C.

       Enfin, il existe certaines classes  de  caractères  prédéfinies.  Leurs
       noms sont assez explicites : [:alnum:], [:alpha:], [:cntrl:], [:digit:]
       (chiffres), [:graph:], [:lower:] (minuscules), [:print:] (affichables),
       [:punct:] (ponctuation), [:space:] (espace), [:upper:] (majuscules), et
       [:xdigit:] (chiffres hexadécimaux). Par exemple, [[:alnum:]] correspond
       à  [0-9A-Za-z],  à  la  différence  près  que  ce  dernier  dépend  des
       paramètres régionaux C et du codage de caractères ASCII, alors  que  le
       premier  est plus portable. Remarquez que les crochets dans les noms de
       classes font partie intégrante du nom  symbolique,  et  qu’ils  doivent
       donc  être  inclus en plus des crochets encadrant ces expressions entre
       crochets. La plupart des  méta-caractères  perdent  leur  signification
       particulière  à  l’intérieur  d’une  expression  entre  crochets.  Pour
       inclure un caractère ], mettez-le en premier dans la  liste.  De  même,
       pour inclure un caractère ^, placez-le n’importe où sauf au début de la
       liste. Enfin, pour inclure un -, placez-le en dernier.

   Ancrage
       L’accent  circonflexe  « ^ »  et  le  symbole  dollar  « $ »  sont  des
       méta-caractères correspondant respectivement à une chaîne vide au début
       et en fin de ligne.

   Caractère barre oblique inverse et les expressions spéciales
       Les symboles \< et \> correspondent respectivement à une chaîne vide en
       début  et  en  fin de mot. Le symbole \b correspond à une chaîne vide à
       l’extrémité d’un mot, et \B correspond à une chaîne vide ne se trouvant
       pas  à  une  extrémité  de  mot.  Le  symbole  \w  est un synonyme pour
       [[:alnum:]] et \W est un synonyme pour [^[:alnum:]].

   Répétitions
       Dans une expression rationnelle, un caractère peut être suivi par  l’un
       des opérateurs de répétition suivants :
       ?      L’élément  précédent  est  facultatif  et peut être rencontré au
              plus une fois.
       *      L’élément précédent peut être rencontré zéro ou plusieurs  fois.
       +      L’élément précédent peut être rencontré une ou plusieurs fois.
       {n}    L’élément précédent doit correspondre exactement n fois.
       {n,}   L’élément précédent doit correspondre n fois ou plus.
       {,m}   L’élément précédent doit correspondre au plus m fois.
       {n,m}  L’élément  précédent  doit correspondre au moins n fois, mais au
              plus m fois.

   Concaténations
       Deux expressions rationnelles peuvent être  juxtaposées ;  l’expression
       résultante  correspondra  à toute chaîne formée par la juxtaposition de
       deux sous-chaînes correspondant respectivement aux deux expressions.

   Alternatives
       Deux expressions rationnelles  peuvent  être  reliées  par  l’opérateur
       infixe  | ;  l’expression  résultante  correspondra  à toute chaîne qui
       comporte l’une ou l’autre des deux expressions.

   Priorités
       Les répétitions ont priorité sur les concaténations, qui  à  leur  tour
       ont  priorité  sur  les  alternatives.  Une  sous-expression  peut être
       entourée par des parenthèses pour modifier ces règles  de  priorité  et
       former une expression.

   Références arrières et sous-expressions
       La  référence  inverse  \n, où n est un chiffre unique, correspond à la
       sous-chaîne déjà mise en correspondance avec la n-ième  sous-expression
       rationnelle entre parenthèses.

   Expressions rationnelles basiques et étendues
       Dans les expressions rationnelles simples, les méta-caractères ?, +, {,
       |, (, et ) perdent leur signification spéciale, il faut utiliser  à  la
       place leur version avec la contre-oblique \?, \+, \{, \|, \(, et \).

       La  version  traditionnelle d’egrep ne connaît pas le méta-caractère {,
       et certaines implémentations d’egrep utilisent \{ à la place,  si  bien
       que  des  scripts  shell  portables  devraient éviter { dans les motifs
       d’egrep et utiliser [{] pour désigner un caractère {.

       GNU grep -E essaie d’émuler l’usage traditionnel  en  supposant  que  {
       n’est  pas  spécial  au  cas où il rendrait invalide l’expression qu’il
       commence. Par exemple, la  commande  shell  grep -E '{1'  recherche  la
       chaîne  composée  des deux caractères {1 au lieu de signaler une erreur
       de syntaxe. POSIX.2 permet ce comportement comme  une  extension  à  la
       norme, mais les scripts portables devraient l’éviter.

VARIABLES DENVIRONNEMENT
       Le  comportement  de grep est modifié par les variables d’environnement
       suivantes :

       Les paramètres régionaux pour la catégorie LC_foo est définie  par  les
       trois  variables d’environnement LC_ALL, LC_truc, LANG, dans cet ordre.
       La variable positionnée en premier détermine le  choix  des  paramètres
       régionaux.   Par   exemple,  si  LC_ALL  n’est  pas  positionnée,  mais
       LC_MESSAGES vaut fr_FR, alors le français est utilisé pour  l’affichage
       des  messages.  Par  défaut  « C »  est  utilisée  si  aucune  variable
       d’environnement n’est trouvée, si le catalogue des paramètres régionaux
       n’est  pas  installé ou bien si grep a été compilé sans le support pour
       les langues nationales (NLS).

       GREP_OPTIONS
              Cette variable définit des options  qui  seront  ajoutées  avant
              n’importe  quelle  option explicite de la ligne de commande. Par
              exemple,  si  GREP_OPTIONS  vaut  « --binary-files=without-match
              --directories=skip », grep se comporte comme si les deux options
              --binary-files=without-match et --directories=skip  avaient  été
              spécifiées  avant  les  options  explicites. Différentes options
              peuvent être séparées par des  espaces,  et  une  contre-oblique
              supprime  la signification spéciale du caractère suivant, ce qui
              permet de spécifier une  option  contenant  une  espace  ou  une
              contre-oblique.

       GREP_COLOR
              Cette  variable  spécifie  la  couleur  utilisée  pour mettre en
              évidence le texte qui correspond (et n’est pas vide).  Elle  est
              dépréciée  en  faveur de GREP_COLORS, mais est encore gérée. Les
              capacités mt, ms et mc de GREP_COLORS sont plus prioritaires que
              celles-ci.  Cette variable ne peut que spécifier la couleur pour
              mettre en évidence le texte non vide  qui  correspond  dans  une
              ligne  qui  correspond (une ligne sélectionnée quand l’option de
              la ligne de commande -v n’est pas  utilisée,  ou  une  ligne  de
              contexte  quand  -v  est  spécifiée).  La  valeur par défaut est
              01;31, ce qui correspond à une fonte grasse,  avec  une  couleur
              d’encre rouge avec le fond par défaut du terminal.

       GREP_COLORS
              Spécifier  les couleurs et autres attributs utilisés pour mettre
              en évidence différentes parties de la sortie. Sa valeur est  une
              liste  de  capacités  séparées par des deux-points, qui vaut par
              défaut  ms=01;31:mc=01;31:sl=:cx=:fn=35:ln=32:bn=32:se=36   sans
              les  capacités booléennes rv et ne (qui prennent alors la valeur
              « false », faux). Les capacités gérées sont les suivantes :

              sl=    Sous-chaîne SGR (« Select Graphic Rendition »)  pour  les
                     lignes  entières  sélectionnées  (c’est-à-dire les lignes
                     qui correspondent quand l’option en ligne de commande  -v
                     n’est  pas  utilisée,  ou les lignes qui ne correspondent
                     pas quand -v est spécifiée).  Si  cependant  la  capacité
                     booléenne  rv  et  l’option  en ligne de commande -v sont
                     toutes deux spécifiées, ça  s’applique  à  la  place  aux
                     lignes  de  contexte  qui  correspondent.  La  valeur par
                     défaut est vide (c’est-à-dire la paire  de  couleurs  par
                     défaut du terminal).

              cx=    Sous-chaîne  SGR  pour  les  lignes  de contexte entières
                     (c’est-à-dire les lignes qui ne correspondent  pas  quand
                     l’option  en  ligne de commande -v n’est pas utilisée, ou
                     les lignes qui correspondent quand -v est spécifiée).  Si
                     cependant  la  capacité booléenne rv et l’option en ligne
                     de commande -v sont toutes deux spécifiées, ça s’applique
                     à la place aux lignes qui ne correspondent pas. La valeur
                     par défaut est vide (c’est-à-dire la  paire  de  couleurs
                     par défaut du terminal).

              rv     Valeur   booléenne   qui  inverse  la  signification  des
                     capacités sl= et cx= quand la ligne de  commande  -v  est
                     spécifiée.  La  valeur  par  défaut  est  le booléen faux
                     (c’est-à-dire la capacité est omise).

              mt=01;31
                     Sous-chaîne SGR pour le texte  non  vide  qui  correspond
                     dans les lignes qui correspondent (c’est-à-dire une ligne
                     sélectionnée quand l’option en ligne de commande -v n’est
                     pas  utilisée,  ou  une  ligne  de  contexte quand -v est
                     spécifiée). L’utiliser est équivalent  à  utiliser  à  la
                     fois ms= et mc= avec la même valeur. La valeur par défaut
                     correspond à une fonte grasse, avec une  couleur  d’encre
                     rouge sur le fond de la ligne en cours.

              ms=01;31
                     Sous-chaîne  SGR  pour  le  texte non vide qui correspond
                     dans une ligne sélectionnée (ce n’est utilisé  que  quand
                     l’option  en  ligne  de  commande -v n’est pas utilisée).
                     L’effet de la capacité sl= (ou cx=  si  rv  est  activée)
                     reste  actif  quand  c’est  utilisé. La valeur par défaut
                     correspond à une fonte grasse, avec une  couleur  d’encre
                     rouge sur le fond de la ligne en cours.

              mc=01;31
                     Sous-chaîne  SGR  pour  le  texte non vide qui correspond
                     dans les lignes de contexte (ce n’est utilisé  que  quand
                     l’option  en  ligne  de  commande -v n’est pas utilisée).
                     L’effet de la capacité cx= (ou sl=  si  rv  est  activée)
                     reste  actif  quand  c’est  utilisé. La valeur par défaut
                     correspond à une fonte grasse, avec une  couleur  d’encre
                     rouge sur le fond de la ligne en cours.

              fn=35  Sous-chaîne  SGR  pour  les noms de fichier qui préfixent
                     les lignes de contenu. La valeur par défaut correspond  à
                     du  texte  de  couleur  magenta sur le fond par défaut du
                     terminal.

              ln=32  Sous-chaîne SGR pour les numéros de ligne  qui  préfixent
                     les  lignes de contenu. La valeur par défaut correspond à
                     du texte de couleur verte  sur  le  fond  par  défaut  du
                     terminal.

              bn=32  Sous-chaîne  SGR  pour les emplacements qui préfixent les
                     lignes de contenu. La valeur par défaut correspond  à  du
                     texte  de  couleur  verte  sur  le  fond  par  défaut  du
                     terminal.

              se=36  Sous-chaîne SGR pour les  séparateurs  qui  sont  insérés
                     entre  les champs des lignes sélectionnées (:), entre les
                     champs des lignes de contexte (-) et entre les groupes de
                     lignes  adjacentes quand un contexte non nul est spécifié
                     (--). La valeur par  défaut  correspond  à  du  texte  de
                     couleur cyan sur le fond par défaut du terminal.

              ne     Valeur  booléenne  qui évite l’effacement de la fin de la
                     ligne en utilisant une séquence EL (« Erase in Line », ou
                     en  français  « effacement  en  ligne »)  vers  la droite
                     (\33[K) à chaque fois qu’un élément  coloré  se  termine.
                     C’est nécessaire pour les terminaux sur lesquels EL n’est
                     pas géré. Sinon, c’est aussi utile pour les terminaux sur
                     lesquels      la      capacité     booléenne     terminfo
                     « back_color_erase » (bce) ne s’applique pas,  quand  les
                     couleurs de mise en évidence ne touchent pas à la couleur
                     de fond,  quand  EL  est  trop  lent  ou  cause  trop  de
                     scintillements.  La valeur par défaut est le booléen faux
                     (c’est-à-dire que la capacité n’est pas activée).

              Notez que les capacités booléenne n’ont pas de partie  « =... ».
              Elles  sont  omises  par  défaut (ce qui correspond à une valeur
              booléenne fausse) et deviennent vrai si elles sont spécifiées.

              Voir  la  section  Select  Graphic  Rendition  (SGR)   dans   la
              documentation  du terminal texte utilisé pour avoir la liste des
              valeurs autorisées et  leur  signification  comme  attributs  de
              caractère.  Ces  valeurs  de  sous-chaînes sont des entiers sous
              forme  décimale  et  peuvent  être  concaténées  à   l’aide   de
              points-virgules.  grep  se charge d’assembler le résultat en une
              séquence  SGR  complète  (\33[...m).  Les  valeurs  courantes  à
              concaténer   sont   entre  autres  1  (gras),  4  (souligné),  5
              (clignotant), 7 (inversé), 39 (couleur de trait par défaut),  30
              à  37  (couleurs  de  trait), 90 à 97 (couleurs de trait en mode
              16 couleurs), 38;5;0 à 38;5;255 (couleurs de trait en mode 88 et
              256 couleurs),  49  (couleur  de  fond  par  défaut),  40  à  47
              (couleurs de  fond),  100  à  107  (couleurs  de  fond  en  mode
              16 couleurs)  et  48;5;0 à 48;5;255 (couleurs de fond en mode 88
              et 256 couleurs).

       LC_ALL, LC_COLLATE, LANG
              Ces variables spécifient le choix des paramètres régionaux  pour
              la  catégorie  LC_COLLATE,  qui détermine l’ordre des caractères
              utilisé pour l’interprétation des intervalles tels que [a-z].

       LC_ALL, LC_CTYPE, LANG
              Ces variables spécifient le choix des paramètres régionaux  pour
              la  catégorie  LC_CTYPE  qui  détermine  le codage de caractères
              utilisé,  par  exemple  pour  indiquer  quels  caractères   sont
              considérés comme étant des espaces.

       LC_ALL, LC_MESSAGES, LANG
              Ces  variables spécifient le choix des paramètres régionaux pour
              la catégorie LC_MESSAGES, qui détermine la langue  utilisée  par
              grep  pour  ses  messages.  Par défaut, avec « C », les messages
              sont en anglais américain.

       POSIXLY_CORRECT
              Si cette  variable  est  positionnée,  grep  se  comporte  comme
              indiqué  dans  la  norme  POSIX.2.  Sinon, grep se comporte plus
              comme les  autres  programmes  GNU.  POSIX.2  requiert  que  les
              options  qui  suivent  des  noms  de fichiers soient considérées
              aussi comme des noms de fichiers. Par défaut, ces  options  sont
              déplacées  avant  la  liste des opérandes et sont traitées comme
              des  options.  POSIX.2  requiert  aussi  que  les  options   non
              reconnues  soient  considérées  comme « illégales » ; mais comme
              elles  n’enfreignent  pas  vraiment  les  règles,   elles   sont
              rapportées comme étant « invalides » par défaut. POSIXLY_CORRECT
              désactive aussi l’option _N_GNU_nonoption_argv_flags_,  qui  est
              décrite plus bas.

       _N_GNU_nonoption_argv_flags_
              (Ici, N est l’identifiant numérique du processus de grep). Si le
              i-ième caractère de la valeur de cette variable  d’environnement
              vaut  1,  le  i-ième  opérande de grep n’est pas considéré comme
              étant une option, même s’il semble l’être. Un shell peut  placer
              cette  variable  dans l’environnement de chaque commande lancée,
              pour spécifier quels opérandes sont le résultat du  remplacement
              de  méta-caractères et ne doivent donc pas être considérés comme
              des  options.  Ce  comportement   n’est   présent   qu’avec   la
              bibliothèque C de GNU, et seulement si POSIXLY_CORRECT n’est pas
              positionnée.

CODE DE RETOUR

       Normalement, le code de retour est nul si  des  lignes  à  sélectionner
       sont  trouvées et il vaut 1 dans le cas contraire. Cependant le code de
       retour vaut 2 si une erreur est survenue, à moins  qu’une  des  options
       -q, --quiet ou --silent ne soit utilisée et qu’une ligne à sélectionner
       soit trouvée. Notez toutefois que POSIX spécifie que le code de  retour
       en  cas d’erreur doit être supérieur à 1 ; il est donc recommandé, pour
       rester portable, de tester la condition générale plutôt qu’une  égalité
       stricte à 2.

COPYRIGHT

       Copyright © 1998, 1999, 2000, 2002, 2005 Free Software Foundation, Inc.

       Ce logiciel est  libre ;  voir  les  sources  pour  les  conditions  de
       reproduction.  AUCUNE  garantie  n’est  donnée,  pas  même  la garantie
       implicite de COMMERCIALISATION ni d’ADÉQUATION À UN BESOIN PARTICULIER.

BOGUES

   Remonter des bogues
       Envoyez    les    rapports    de   bogue   ([ndt]   en   anglais !)   à
       <bug-grep@gnu.org>, une  liste  de  diffusion  dont  la  page  web  est
       <http://lists.gnu.org/mailman/listinfo/bug-grep>.  Le logiciel de suivi
       des   bogues   sur   Savannah   de   grep   est   situé   à   l’adresse
       <http://savannah.gnu.org/bugs/?group=grep>.

   Bogues connus
       Dans  les  constructions {n,m} de grandes valeurs de répétition peuvent
       pousser grep à  utiliser  beaucoup  de  mémoire.  D’autres  expressions
       rationnelles  tordues peuvent prendre un temps très long et mener à une
       insuffisance de mémoire.

       Les références arrières sont très lentes et peuvent demander  un  temps
       très important (exponentiel).

VOIR AUSSI

   Pages de manuel
       awk(1),  cmp(1),  diff(1),  find(1), gzip(1), perl(1), sed(1), sort(1),
       xargs(1),  zgrep(1),   mmap(2),   read(2),   pcre(3),   pcrepattern(3),
       terminfo(5), glob(7), regex(7).

   POSIX Page de manuel du programmeur
       grep(1p).

   Documentation TeXinfo
       La  documentation complète de grep est disponible au format TeXinfo. Si
       info et grep sont correctement installés, la commande

              info grep

       devrait vous donner accès au manuel complet de grep.

NOTES

       GNU’s not Unix, but Unix is a beast; its plural form is Unixen.

TRADUCTION

       Cette page de manuel a été traduite par Christophe Blaess  en  1997  et
       mise  à jour par Denis Barbier jusqu’en 2005.  La version présente dans
       Debian est dorénavant maintenue par Luc Froidefond <luc DOT  froidefond
       AT free DOT fr> et les membres de la liste <debian-l10n-french AT lists
       DOT debian DOT org>.  Veuillez signaler toute erreur de traduction  par
       un rapport de bogue sur le paquet manpages-fr-extra.