Se connecter
Se connecter
Inscription
Mot de passe perdu
Connexion:
[Actualités]
Nvidia prévient d'une pénurie de GPU ce trimestre, avec une reprise début 2025
[Actualités]
Les Technos #469 : Un jour sans fin
[Actualités]
Test Farming Simulator 25 (PS5) - Des innovations intéressantes mais des perfor...
[Actualités]
Qualcomm souhaite réduire davantage les prix des PC Windows basés sur ARM
[Actualités]
Finalement, Google préparerait une nouvelle tablette mais la Pixel Tablet 2 ser...
[Actualités]
Windows 10 version 22H2 : erreur de mise à jour et de désinstallation
[Actualités]
OpenAI prépare désormais son propre navigateur
[Actualités]
WhatsApp bat Telegram : les transcriptions des messages vocaux arrivent pour tou...
[Actualités]
Unreal et Unreal Tournament désormais gratuits sur Internet Archive
[Actualités]
Windows 10 : Microsoft affiche des publicités en plein écran pour les PC équi...
[Articles]
Dungeons 4 - Nintendo Switch Edition
[Articles]
The Bridge Curse 2 : The Extrication
[Articles]
Farmagia
[Articles]
I*CHU: Chibi Edition
[Articles]
Farming Simulator 25
[Articles]
Goblin Slayer -Another Adventurer- Nightmare Feast
[Articles]
Deel lance des programmes en marque blanche et pour les revendeurs pour plus de ...
[Articles]
ESET Research : WolfsBane, nouvelle porte dérobée de cyber-espionnage Linux cr...
[Articles]
Devoteam présente son nouveau plan stratégique « AMPLIFY » avec un fort acce...
[Articles]
LEGO Horizon Adventures
Actualités
Lettre d'information
Proposer une actualité
Archives
Actualités
Articles
Programmation
Press Release
Matériel
Logiciels
Livres
Interviews
Derniers commentaires
Jeux Vidéos
XBox One
XBox 360
Wii U
PSP
PS4
PS3
PC
DS
GameCube
3DS
Forum
Derniers messages
Informatique
Fun
Divers
Logithèque
Blogs
Divers
A Propos
Annonceurs
Contact
Recherche
RSS
Editer un article
Titre
Mots Clés
Texte
[size=18] [b]Nom[/b] [/size] grep, egrep, fgrep - Afficher les lignes correspondant à un motif donné. [size=18] [b]Résumé[/b] [/size] [b]grep[/b] [i][ options ][/i] [i]MOTIF[/i] [i][ FICHIER ...][/i] [b][/b] [b]grep[/b] [i][ options ][/i] [b][ -e[/b] [i]MOTIF[/i] | [b]-f[/b] [b]FICHIER ][/b] [i][ FICHIER ...][/i] [size=18] [b]Description[/b] [/size] [b]Grep[/b] recherche dans les [b]FICHIER s[/b] indiqués (ou depuis l'entrée standard si aucun fichier n'est fourni, ou si le nom [b]-[/b] est mentionné) les lignes correspondant à un certain [b]MOTIF .[/b] Par défaut, [b]grep[/b] affiche les lignes qui correspondent au motif. De plus, il existe deux variantes du programme : [b]egrep[/b] et [b]fgrep .[/b] [b]Egrep[/b] est identique à [b]grep -E .[/b] [b]Fgrep[/b] est identique à [b]grep -F .[/b] [size=18] [b]Options[/b] [/size] [b][i]-A NOMBRE , -^-after-context= NOMBRE[/i][/b] [table][row][col] [/col][col]Afficher [i]NOMBRE[/i] lignes de contexte supplémentaires après les lignes qui concordent. Une ligne contenant [b]-^-[/b] est mise entre les groupes contigus de correspondances.[/col][/row][/table] [b]-a , -^-text[/b] [table][row][col] [/col][col]Traiter un fichier binaire comme s'il s'agissait de texte ; cette option est équivalente à l'option [b]-^-binary-files=text .[/b][/col][/row][/table] [b][i]-B NOMBRE , -^-before-context= NOMBRE[/i][/b] [table][row][col] [/col][col]Afficher [i]NOMBRE[/i] lignes de contexte supplémentaires avant les lignes qui concordent. Une ligne contenant [b]-^-[/b] est mise entre les groupes contigus de correspondances.[/col][/row][/table] [b][i]-C NOMBRE , -^-context= NOMBRE[/i][/b] [table][row][col] [/col][col]Afficher [i]NOMBRE[/i] lignes de contexte. Une ligne contenant [b]-^-[/b] est mise entre les groupes contigus de correspondances.[/col][/row][/table] [b]-b , -^-byte-offset[/b] [table][row][col] [/col][col]Avant chaque ligne, afficher sa position relative (en octets) au sein du fichier.[/col][/row][/table] [b][i]-^-binary-files= TYPE[/i][/b] [table][row][col] [/col][col]Si les premiers octets d'un fichier indiquent qu'il contient des données binaires, supposer que le fichier est de type [b]TYPE .[/b] Par défaut, [i]TYPE[/i] est [b]binary[/b] (binaire), et soit [b]grep[/b] affiche un message d'une ligne disant que le fichier binaire concorde, soit il n'affiche rien s'il n'y a pas concordance. Si [i]TYPE[/i] est [b]without-match[/b] (sans concordance), [b]grep[/b] suppose qu'un fichier binaire ne concorde jamais. C'est équivalent à l'option [b]-I .[/b] Si [i]TYPE[/i] est [b]text[/b] (texte), [b]grep[/b] traite un fichier binaire comme du texte. C'est équivalent à l'option [b]-a .[/b] [b]Attention :[/b] [b]grep -^-binary-files=text[/b] 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 interprète cet affichage comme étant des commandes.[/col][/row][/table] [b][i]-^-colour[=[i]QUAND[/i]] , -^-color[=[i]QUAND[/i]][/i][/b] [table][row][col] [/col][col]Entourer la chaîne correspondante avec les marqueurs trouvés dans la variable d'environnement [b]GREP_COLOR .[/b] Les valeurs possibles de [i]QUAND[/i] sont [b]never (jamais), always (toujours) ou auto (automatique).[/b][/col][/row][/table] [b]-c , -^-count[/b] [table][row][col] [/col][col]Ne pas afficher les résultats normaux. À la place, afficher un décompte des lignes correspondantes pour chaque fichier. Avec l'option [b]-v , -^-invert-match[/b] (voir plus bas), afficher le nombre de lignes ne correspondant pas au motif.[/col][/row][/table] [b][i]-D ACTION , -^-devices= ACTION[/i][/b] [table][row][col] [/col][col]Si le fichier est un périphérique, une FIFO ou une socket, utiliser [i]ACTION[/i] dessus. Par défaut, [i]ACTION[/i] est [b]read[/b] (lecture), ce qui signifie que les périphériques sont lus comme des fichiers normaux. Si [i]ACTION[/i] est [b]skip[/b] (escamotage), les périphériques ne sont pas pris en compte et aucun message n'est affiché.[/col][/row][/table] [b][i]-d ACTION , -^-directories= ACTION[/i][/b] [table][row][col] [/col][col]Si le fichier est un répertoire, utiliser [b]ACTION .[/b] Par défaut, [i]ACTION[/i] est [b]read[/b] (lecture), ce qui signifie que les répertoires sont lus comme des fichiers normaux. Si [i]ACTION[/i] est [b]skip[/b] (escamotage), les répertoires ne sont pas pris en compte et aucun message n'est affiché. Si [i]ACTION[/i] est [b]recurse[/b] (récursivité), [b]grep[/b] lit tous les fichiers présents dans chaque répertoire, récursivement. C'est équivalent à l'option [b]-r .[/b][/col][/row][/table] [b]-E , -^-extended-regexp[/b] [table][row][col] [/col][col]Interpréter le [i]MOTIF[/i] comme une expression rationnelle étendue (voir plus bas).[/col][/row][/table] [b][i]-e MOTIF , -^-regexp= MOTIF[/i][/b] [table][row][col] [/col][col]Utiliser le [i]MOTIF[/i] indiqué. Ceci permet de protéger les motifs commençant par [b]- .[/b][/col][/row][/table] [b]-F , -^-fixed-strings[/b] [table][row][col] [/col][col]Interpréter le [i]MOTIF[/i] 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. [/col][/row][/table] [b]-P , -^-perl-regexp[/b] [table][row][col] [/col][col]Interpréter le [i]MOTIF[/i] comme étant une expression rationnelle de Perl.[/col][/row][/table] [b][i]-f FICHIER , -^-file= FICHIER[/i][/b] [table][row][col] [/col][col]Lire les motifs dans le [i]FICHIER[/i] indiqué, un motif par ligne. Un fichier vide ne contient aucun motif, si bien qu'aucune concordance n'est trouvée.[/col][/row][/table] [b]-G , -^-basic-regexp[/b] [table][row][col] [/col][col]Interpréter le [i]MOTIF[/i] comme une expression rationnelle simple (voir plus bas). C'est le comportement par défaut.[/col][/row][/table] [b]-H , -^-with-filename[/b] [table][row][col] [/col][col]Afficher le nom du fichier pour chaque concordance.[/col][/row][/table] [b]-h , -^-no-filename[/b] [table][row][col] [/col][col]Ne pas afficher le nom des fichiers dans les résultats lorsque plusieurs fichiers sont parcourus.[/col][/row][/table] [b]-^-help[/b] [table][row][col] [/col][col]Afficher un court message d'aide.[/col][/row][/table] [b]-I[/b] [table][row][col] [/col][col]Traiter un fichier binaire comme s'il ne contenait aucune concordance ; c'est équivalent à l'option [b]-^-binary-files=without-match .[/b][/col][/row][/table] [b]-i , -^-ignore-case[/b] [table][row][col] [/col][col]Ignorer les différences majuscules/minuscules aussi bien dans le [i]MOTIF[/i] que dans les fichiers.[/col][/row][/table] [b]-L , -^-files-without-match[/b] [table][row][col] [/col][col]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 à l'intérieur de chaque fichier s'arrête dès la première concordance.[/col][/row][/table] [b]-l , -^-files-with-matches[/b] [table][row][col] [/col][col]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 à l'intérieur de chaque fichier s'arrête dès la première concordance.[/col][/row][/table] [b][i]-m NOMBRE , -^-max-count= NOMBRE[/i][/b] [table][row][col] [/col][col]Arrêter de lire un fichier après avoir lu [i]NOMBRE[/i] lignes qui correspondent. Si l'entrée est l'entrée standard prise depuis un fichier normal, et si [i]NOMBRE[/i] lignes qui correspondent sont affichées, [b]grep[/b] 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 qui viennent ensuite. Ceci permet au processus d'appel de redémarrer une recherche. Quand [b]grep[/b] s'arrête après [i]NOMBRE[/i] lignes de concordance, il affiche éventuellement des lignes de contexte. Quand l'option [b]-c[/b] ou [b]-^-count[/b] est utilisée, [b]grep[/b] n'affiche pas plus que [i]NOMBRE[/i] lignes. Quand l'option [b]-v[/b] ou [b]-^-invert-match[/b] est aussi utilisée, [b]grep[/b] s'arrête après avoir affiché [i]NOMBRE[/i] lignes qui ne concordent pas.[/col][/row][/table] [b]-^-mmap[/b] [table][row][col] [/col][col]Si possible, utiliser la fonction système [b]mmap (2)[/b] pour lire les données, à la place de la fonction système [b]read (2)[/b] utilisée par défaut. Dans certaines circonstances, [b]-^-mmap[/b] permet de meilleures performances. Cependant, [b]-^-mmap[/b] peut avoir un comportement indéfini (y compris la génération d'un [b]core dump )[/b] si un fichier voit sa taille réduite pendant que [b]grep[/b] le lit, ou si une erreur d'entrée-sortie survient.[/col][/row][/table] [b]-n , -^-line-number[/b] [table][row][col] [/col][col]Ajouter à chaque ligne de sortie un préfixe contenant son numéro dans le fichier.[/col][/row][/table] [b]-o , -^-only-matching[/b] [table][row][col] [/col][col]N'afficher que la partie d'une ligne qui correspond au [b]MOTIF .[/b][/col][/row][/table] [b][i]-^-label= ÉTIQUETTE[/i][/b] [table][row][col] [/col][col]Afficher les données provenant de l'entrée standard comme si elles provenaient du fichier [b]ÉTIQUETTE .[/b] C'est particulièrement utile pour des outils comme zgrep, par exemple, qui font : [b][/b] [b]gzip -cd foo.gz |grep --label=truc quelquechose[/b][/col][/row][/table] [b]-^-line-buffered[/b] [table][row][col] [/col][col]Vider la sortie après chaque ligne. Ceci peut détériorer les performances.[/col][/row][/table] [b]-q , -^-quiet , -^-silent[/b] [table][row][col] [/col][col]Ne pas afficher les résultats normaux. Sortir immédiatement avec un code de retour égal à zéro si aucune concordance n'est trouvée, et même si une erreur est détectée. Voyez aussi l'option [b]-s[/b] ou [b]-^-no-messages .[/b][/col][/row][/table] [b]-R , -r , -^-recursive[/b] [table][row][col] [/col][col]Lire tous les fichiers à l'intérieur de chaque répertoire, récursivement. C'est équivalent à l'option [b]-d recurse .[/b][/col][/row][/table] [b][i] -^-include= MOTIF[/i][/b] [table][row][col] [/col][col]Procéder récursivement dans les répertoires, pour les fichiers qui correspondent au [b]MOTIF .[/b][/col][/row][/table] [b][i] -^-exclude= MOTIF[/i][/b] [table][row][col] [/col][col]Procéder récursivement dans les répertoires, pour les fichiers qui ne correspondent pas au [b]MOTIF .[/b][/col][/row][/table] [b]-s , -^-no-messages[/b] [table][row][col] [/col][col]Ne pas afficher les messages d'erreur concernant les fichiers inexistants ou illisibles. Note de portabilité : à la différence de s-1GNUs0 [b]grep ,[/b] le [b]grep[/b] traditionnel n'est pas conforme au standard s-1POSIX.2s0, car le [b]grep[/b] traditionnel n'a pas d'option [b]-q[/b] et son option [b]-s[/b] agit comme l'option [b]-q[/b] du [b]grep[/b] de s-1GNUs0. Les scripts shell destinés à être utilisés avec ces différentes versions devraient éviter d'utiliser les options [b]-q[/b] et [b]-s ,[/b] et devraient plutôt rediriger la sortie vers /dev/null.[/col][/row][/table] [b]-U , -^-binary[/b] [table][row][col] [/col][col]Traiter les fichiers comme s'ils étaient des fichiers binaires. Par défaut, sous MS-DOS et MS-Windows, [b]grep[/b] détermine le type de fichier en regardant le contenu des 32 premiers kilo-octets. Si [b]grep[/b] 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 [b]^[/b] et [b]$[/b] fonctionnent correctement). L'option [b]-U[/b] 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.[/col][/row][/table] [b]-u , -^-unix-byte-offsets[/b] [table][row][col] [/col][col]Afficher la position relative en octets dans le style Unix. Avec cette option, [b]grep[/b] 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 [b]grep[/b] sur une machine Unix. Cette option n'a d'effet que si elle est utilisée conjointement avec l'option [b]-b ,[/b] et sur une machine MS-DOS ou MS-Windows.[/col][/row][/table] [b]-V , -^-version[/b] [table][row][col] [/col][col]Afficher le numéro de version de [b]grep[/b] sur la sortie d'erreur standard. Ce numéro de version devra être inclus dans tous les rapports de bogues (voir plus bas).[/col][/row][/table] [b]-v , -^-invert-match[/b] [table][row][col] [/col][col]Inverser la mise en concordance, pour sélectionner les lignes ne correspondant pas au motif.[/col][/row][/table] [b]-w , -^-word-regexp[/b] [table][row][col] [/col][col]Ne sélectionner que les lignes contenant une concordance formant un mot complet. La sous-chaîne correspondante doit donc être soit 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 se trouver soit à 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é (« _ »).[/col][/row][/table] [b]-x , -^-line-regexp[/b] [table][row][col] [/col][col]Ne sélectionner que les concordances qui occupent une ligne entière.[/col][/row][/table] [b]-y[/b] [table][row][col] [/col][col]Synonyme obsolète pour [b]-i .[/b][/col][/row][/table] [b]-Z , -^-null[/b] [table][row][col] [/col][col]Afficher un octet nul (le caractère s-1ASCIIs0 [b]NUL )[/b] à la place du caractère qui suit d'ordinaire le nom du fichier. Par exemple, [b]grep -lZ[/b] 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 [b]find -print0 ,[/b] [b]perl -0 ,[/b] [b]sort -z ,[/b] et [b]xargs -0[/b] pour traiter des fichiers avec des noms quelconques, même ceux contenant des sauts de ligne.[/col][/row][/table] [size=18] [b]Expressions rationnelles[/b] [/size] Une expression rationnelle [i]( regular expression )[/i] 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. [b]Grep[/b] comprend deux versions différentes pour la syntaxe des expressions rationnelles : « simple » [i]( basic )[/i] et « étendue » [i]( extended ).[/i] Dans la version s-1GNUs0 de [b]grep ,[/b] il n'y a pas de différence dans les fonctionnalités disponibles, quelle que soit la syntaxe utilisée. Dans d'autres implantations, les expressions rationnelles simples sont moins puissantes. 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, sont des expressions rationnelles qui concordent avec eux-mêmes. Tout méta-caractère ayant une signification spéciale doit être protégé en le faisant précéder d'une contre-oblique [i]( backslash ).[/i] Une liste de caractères, encadrée par [b][[/b] et [b]][/b] 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 [b]^[/b] alors la mise en correspondance se fait avec n'importe quel caractère [i]absent[/i] de la liste. Par exemple, l'expression rationnelle [b][0123456789][/b] 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 [i]( locale ,[/i] en anglais) en cours. Ainsi avec la valeur par défaut (appelée « C »), [b][a-d][/b] est équivalent à [b][abcd] .[/b] Avec beaucoup de paramètres régionaux, les caractères sont triés en suivant l'ordre des dictionnaires, et [b][a-d][/b] n'est alors pas équivalent à [b][abcd] ,[/b] mais à [b][aBbCcDd] ,[/b] par exemple. Pour que ces listes aient le comportement usuel de C, vous pouvez positionner la variable d'environnement [b]LC_ALL[/b] à la valeur [b]C .[/b] Enfin, il existe certaines classes de caractères prédéfinies. Leurs noms sont assez explicites : [b][:alnum:] ,[/b] [b][:alpha:] ,[/b] [b][:cntrl:] ,[/b] [b][:digit:][/b] (chiffres), [b][:graph:] ,[/b] [b][:lower:][/b] (minuscules), [b][:print:][/b] (affichables), [b][:punct:][/b] (ponctuation), [b][:space:][/b] (espace), [b][:upper:][/b] (majuscules), et [b][:xdigit:][/b] (chiffres hexadécimaux). Par exemple, [b][[:alnum:]][/b] correspond à [b][0-9A-Za-z] ,[/b] à la différence près que le dernier dépend des paramètres régionaux C et du codage de caractères s-1ASCIIs0, 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 la liste. La plupart des méta-caractères perdent leur signification spéciale au sein des listes. Pour inclure un caractère [b]] ,[/b] mettez-le en premier dans la liste. De même, pour inclure un caractère [b]^ ,[/b] placez-le n'importe où sauf au début de la liste. Enfin, pour inclure un [b]- ,[/b] placez-le en dernier. Le point [b].[/b] correspond à n'importe quel caractère. Le symbole [b]ew[/b] est un synonyme de [b][[:alnum:]][/b] et [b]eW[/b] un synonyme de [b][^[:alnum]] .[/b] L'accent circonflexe [b]^[/b] et le symbole dollar [b]$[/b] sont des méta-caractères correspondant respectivement à une chaîne vide au début et en fin de ligne. Les symboles [b]e<[/b] et [b]e>[/b] correspondent respectivement à une chaîne vide en début et en fin de mot. Le symbole [b]eb[/b] correspond à une chaîne vide à l'extrémité d'un mot, et [b]eB[/b] correspond à une chaîne vide ne se trouvant [i]pas[/i] à une extrémité de mot. Une expression rationnelle correspondant à un caractère unique peut être suivie par l'un des opérateurs de répétition suivants : [b]?[/b] [table][row][col] [/col][col]L'élément précédent est facultatif et peut être rencontré au plus une fois.[/col][/row][/table] [b]*[/b] [table][row][col] [/col][col]L'élément précédent peut être rencontré zéro ou plusieurs fois.[/col][/row][/table] [b]+[/b] [table][row][col] [/col][col]L'élément précédent peut être rencontré une ou plusieurs fois.[/col][/row][/table] [b][i]{ n }[/i][/b] [table][row][col] [/col][col]L'élément précédent doit être cherché exactement [i]n[/i] fois.[/col][/row][/table] [b][i]{ n ,}[/i][/b] [table][row][col] [/col][col]L'élément précédent doit être cherché [i]n[/i] fois ou plus.[/col][/row][/table] [b][i]{ n , m }[/i][/b] [table][row][col] [/col][col]L'élément précédent doit être cherché au moins [i]n[/i] fois, mais au plus [i]m[/i] fois.[/col][/row][/table] 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. Deux expressions rationnelles peuvent être reliées par l'opérateur infixe [b]| ;[/b] l'expression résultante correspondra à toute chaîne concordant avec l'une ou l'autre des deux expressions. Les répétitions ont priorité sur les juxtapositions, 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é. La référence inverse [b][i]e nc[/i][/b] &, où [i]n[/i] est un chiffre unique, correspond à la sous-chaîne déjà mise en correspondance avec la [b]n -ième[/b] sous-expression rationnelle entre parenthèses. Dans les expressions rationnelles simples, les méta-caractères [b]? ,[/b] [b]+ ,[/b] [b]{ ,[/b] [b]| ,[/b] [b]( ,[/b] et [b])[/b] perdent leur signification spéciale, il faut utiliser à la place leurs versions avec la contre-oblique [b]e? ,[/b] [b]e+ ,[/b] [b]e{ ,[/b] [b]e| ,[/b] [b]e( ,[/b] et [b]e) .[/b] La version traditionnelle [b]d' egrep[/b] ne connaît pas le méta-caractère [b]{ ,[/b] et certaines implantations [b]d' egrep[/b] utilisent [b]e{[/b] à la place, si bien que des scripts shell portables devraient éviter [b]{[/b] dans les motifs [b]d' egrep[/b] et utiliser [b][{][/b] pour désigner un caractère [b]{ .[/b] s-1GNUs0 [b]egrep[/b] essaie d'émuler l'usage traditionnel en supposant que [b]{[/b] n'est pas spécial au cas où il rendrait invalide l'expression qu'il commence. Par exemple, la commande shell [b]egrep '{1'[/b] recherche la chaîne composée des deux caractères [b]{1[/b] au lieu de signaler une erreur de syntaxe dans l'expression rationnelle. s-1POSIX.2s0 permet ce comportement comme une extension à la norme, mais les scripts portables devraient l'éviter. [size=18] [b]Variables denvironnement[/b] [/size] Le comportement de grep est modifié par les variables d'environnement suivantes : [b]LC_ALL ,[/b] [b]LC_[i]truc[/i][/b] et [b]LANG ,[/b] dans cet ordre. La variable positionnée en premier détermine le choix des paramètres régionaux. Par exemple, si [b]LC_ALL[/b] n'est pas positionnée, mais [b]LC_MESSAGES[/b] vaut [b]fr_FR ,[/b] alors le français est utilisé pour l'affichage des messages. Le défaut C est utilisé si aucune variable d'environnement n'est trouvée, ou si le catalogue des paramètres régionaux n'est pas installé, ou bien si [b]grep[/b] a été compilé sans le support pour les langues nationales (s-1NLSs0). [b]GREP_OPTIONS[/b] [table][row][col] [/col][col]Cette variable définit des options qui seront ajoutées avant les options de la ligne de commande. Par exemple, si [b]GREP_OPTIONS[/b] vaut [b]« -^-binary-files=without-match -^-directories=skip » ,[/b] [b]grep[/b] se comporte comme si les deux options [b]-^-binary-files=without-match[/b] et [b]-^-directories=skip[/b] 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 un espace ou une contre-oblique.[/col][/row][/table] [b]GREP_COLOR[/b] [table][row][col] [/col][col]Spécifie les marqueurs pour la mise en relief.[/col][/row][/table] [table][row][col] [/col][col][b]LC_ALL[/b], [b]LC_COLLATE[/b], [b]LANG[/b] Ces variables spécifient le choix des paramètres régionaux pour [b]LC_COLLATE ,[/b] qui détermine l'ordre des caractères utilisé dans des intervalles tels que [b][a-z] .[/b][/col][/row][/table] [table][row][col] [/col][col][b]LC_ALL[/b], [b]LC_CTYPE[/b], [b]LANG[/b] Ces variables spécifient le choix des paramètres régionaux pour [b]LC_CTYPE ,[/b] qui détermine le codage de caractères utilisé, par exemple pour indiquer quels caractères sont considérés comme étant des espaces.[/col][/row][/table] [table][row][col] [/col][col][b]LC_ALL[/b], [b]LC_MESSAGES[/b], [b]LANG[/b] Ces variables spécifient le choix des paramètres régionaux pour [b]LC_MESSAGES ,[/b] qui détermine la langue utilisée par [b]grep[/b] pour ses messages. Avec le défaut C, les messages sont en américain.[/col][/row][/table] [b]POSIXLY_CORRECT[/b] [table][row][col] [/col][col]Si cette variable est positionnée, [b]grep[/b] se comporte comme indiqué dans la norme s-1POSIX.2s0. Sinon, [b]grep[/b] se comporte plus comme les autres programmes s-1GNUs0. s-1POSIX.2s0 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. s-1POSIX.2s0 requiert aussi que les options non reconnues soient considérées comme « illégales » ; mais comme elles n'enfreignent pas vraiment la loi, elles sont rapportées comme étant « invalides » par défaut. [b]POSIXLY_CORRECT[/b] désactive aussi l'option [b]_[/b][i]N[/i][b]_GNU_nonoption_argv_flags_[/b], qui est décrite plus bas.[/col][/row][/table] [table][row][col] [/col][col][b]_[/b][i]N[/i][b]_GNU_nonoption_argv_flags_[/b] (ici, [i]N[/i] est l'identifiant numérique du processus de [b]grep ).[/b] Si le [b]i -ième[/b] caractère de la valeur de cette variable d'environnement vaut [b]1 ,[/b] le [b]i -ième[/b] opérande de [b]grep[/b] 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 s-1GNUs0, et seulement si [b]POSIXLY_CORRECT[/b] n'est pas positionnée.[/col][/row][/table] [size=18] [b]Diagnostiques[/b] [/size] Normalement, le code de retour est 0 si des concordances ont été trouvées, et 1 si aucune concordances n'a été faite. Mais le code est 2 si une erreur est survenue, à moins que les options [b]-q ,[/b] [b]-^-quiet[/b] ou [b]-^-silent[/b] ne soient utilisées et qu'une ligne ne soit trouvée. [size=18] [b]Bugs[/b] [/size] Envoyez les rapports de bogue ([ndt] en anglais !) à [b]bug-gnu-utils@gnu.org .[/b] Assurez-vous d'inclure le mot « grep » quelque part dans le sujet du message. Dans les constructions [b][i]{ m , n }[/i][/b] de grandes valeurs de répétition peuvent pousser grep à utiliser beaucoup de mémoire. De plus, certaines autres expressions rationnelles tordues peuvent prendre un temps très long, et mener à un manque de mémoire. Les références inverses sont très lentes et peuvent demander un temps très long. [size=18] [b]Traduction[/b] [/size] Christophe Blaess, 1997. [b][/b] Denis Barbier, 2003.
Fichier
Forum
-
Derniers messages
Bavardages
Aujourd'hui, je rénove ou je construis ^^
Software
problème sur windows 10
Réseaux et Télécom
Administrateur Réseau - Cisco
Réseaux et Télécom
Problème wifi (POE)
Software
Postfix - Need help
Bavardages
Oh râge oh désespoir !
Programmation
Enregistrement client et envoi mail
Software
SÉCURITÉ MACBOOK
Hardware
conseil matos réseau?
Hardware
nVidia Shield Android TV
Actualités
-
Archives
Matériel
Nvidia prévient d'une pénurie de GPU ce trimestre, avec une reprise début 2025
Les Technos
Les Technos #469 : Un jour sans fin
Jeux Vidéos
Test Farming Simulator 25 (PS5) - Des innovations intéressantes mais des performances à revoir
Matériel
Qualcomm souhaite réduire davantage les prix des PC Windows basés sur ARM
Tablettes
Finalement, Google préparerait une nouvelle tablette mais la Pixel Tablet 2 serait abandonnée
Ada
CSS
Cobol
CPP
HTML
Fortran
Java
JavaScript
Pascal
Perl
PHP
Python
SQL
VB
XML
Anon URL
DailyMotion
eBay
Flickr
FLV
Google Video
Google Maps
Metacafe
MP3
SeeqPod
Veoh
Yahoo Video
YouTube
6px
8px
10px
12px
14px
16px
18px
Informaticien.be
- © 2002-2024
Akretio
SPRL - Generated via
Kelare
The Akretio Network:
Akretio
-
Freedelity
-
KelCommerce
-
Votre publicité sur informaticien.be ?