.\" -*- coding: UTF-8 -*- .de dT .ds Dt \\$2 .. .\" GNU grep man page .dT Time-stamp: 2019-12-29 .\" Update the above date whenever a change to either this file or .\" grep.c's 'usage' function results in a nontrivial change to the man page. .\" In Emacs, you can update the date by running 'M-x time-stamp' .\" after you make a change that you decide is nontrivial. .\" It is no big deal to forget to update the date. . .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH GREP 1 \*(Dt "GNU grep 3.6" "Opdrachten voor gebruikers" . .if !\w|\*(lq| \{\ .\" groff an-old.tmac does not seem to be in use, so define lq and rq. . ie \n(.g \{\ . ds lq \(lq\" . ds rq \(rq\" . \} . el \{\ . ds lq `` . ds rq '' . \} .\} . .if !\w|\*(la| \{\ .\" groff an-ext.tmac does not seem to be in use, so define the parts of .\" it that are used below. For a copy of groff an-ext.tmac, please see: .\" https://git.savannah.gnu.org/cgit/groff.git/plain/tmac/an-ext.tmac .\" --- Start of lines taken from groff an-ext.tmac . .\" Check whether we are using grohtml. .nr mH 0 .if \n(.g \ . if '\*(.T'html' \ . nr mH 1 . . .\" Map mono-width fonts to standard fonts for groff's TTY device. .if n \{\ . do ftr CR R . do ftr CI I . do ftr CB B .\} . .\" groff has glyph entities for angle brackets. .ie \n(.g \{\ . ds la \(la\" . ds ra \(ra\" .\} .el \{\ . ds la <\" . ds ra >\" . \" groff's man macros control hyphenation with this register. . nr HY 1 .\} . .\" Start URL. .de UR . ds m1 \\$1\" . nh . if \\n(mH \{\ . \" Start diversion in a new environment. . do ev URL-div . do di URL-div . \} .. . . .\" End URL. .de UE . ie \\n(mH \{\ . br . di . ev . . \" Has there been one or more input lines for the link text? . ie \\n(dn \{\ . do HTML-NS "" . \" Yes, strip off final newline of diversion and emit it. . do chop URL-div . do URL-div \c . do HTML-NS . \} . el \ . do HTML-NS "\\*(m1" \&\\$*\" . \} . el \ \\*(la\\*(m1\\*(ra\\$*\" . . hy \\n(HY .. . . .\" Start email address. .de MT . ds m1 \\$1\" . nh . if \\n(mH \{\ . \" Start diversion in a new environment. . do ev URL-div . do di URL-div . \} .. . . .\" End email address. .de ME . ie \\n(mH \{\ . br . di . ev . . \" Has there been one or more input lines for the link text? . ie \\n(dn \{\ . do HTML-NS "" . \" Yes, strip off final newline of diversion and emit it. . do chop URL-div . do URL-div \c . do HTML-NS . \} . el \ . do HTML-NS "\\*(m1" \&\\$*\" . \} . el \ \\*(la\\*(m1\\*(ra\\$*\" . . hy \\n(HY .. .\" --- End of lines taken from groff an-ext.tmac .\} . .hy 0 . .SH NAAM grep, egrep, fgrep, rgrep \- toon regels die voldoen aan een patroon . .SH SAMENVATTING \fBgrep\fP [\fIOPTIE\fP.\|.\|.]\& \fIPATRONEN\fP [\fIBESTAND\fP.\|.\|.] .br \fBgrep\fP [\fIOPTIE\fP.\|.\|.]\& \fB\-e\fP \fIPATRONEN\fP \&.\|.\|.\& [\fIBESTAND\fP.\|.\|.] .br \fBgrep\fP [\fIOPTIE\fP.\|.\|.]\& \fB\-f\fP \fIPATROON_BESTAND\fP \&.\|.\|.\& [\fIBESTAND\fP.\|.\|.] . .SH BESCHRIJVING \fBgrep\fP zoekt het \fIPATROON\fP in elk \fIBESTAND\fP. \fIPATROON\fP zijn een of meer patronen gescheiden voor nieuwe regel tekens, \fBgrep\fP toont dan elke regel dit voldoet aan een patroon. Als \fBgrep\fP in een shell commando gebruikte wordt dan zal \fIPATROON\fP tussen aanhalingstekens moeten staan. .PP Een \fIBESTAND\fP of `\fB\-\fP` betekent standaard invoer. Als geen \fIBESTAND\fP werd opgegeven, dan zullen de werk map recursief doorzocht worden, en niet recursieve zoekopdrachten lezen de standaard invoer. .PP In aanvulling hierop, de varianten \fBegrep\fP, \fBfgrep\fP en \fBrgrep\fP zijn identiek aan \fBgrep\ \-E\fP, \fBgrep\ \-F\fP, respectievelijk \fBgrep\ \-r\fP. Deze varianten zijn afgekeurd, maar worden behouden vanwege compatibiliteit. . .SH OPTIES .SS "Algemene Programma Informatie" .TP \fB\-\^\-help\fP Geef een kort help bericht en stop. .TP \fB\-V\fP, \fB\-\^\-version\fP Toon versie nummer van \fBgrep\fP en stop. .SS "Patroon syntaxis" .TP \fB\-E\fP, \fB\-\^\-extended\-regexp\fP Interpreteer \fIPATROON\fP uit als een uitgebreide reguliere expressie (zie onder). .TP \fB\-F\fP, \fB\-\^\-fixed\-strings\fP Interpreteer \fIPATROON\fP als vaste tekst, niet als reguliere expressies. .TP \fB\-G\fP, \fB\-\^\-basic\-regexp\fP Interpreteer \fIPATROON\fP als een reguliere expressie (BRE´s, zie hieronder). Dit is de standaard. .TP \fB\-P\fP, \fB\-\^\-perl\-regexp\fP Interpreteer PATROON als PERL\-compatibele reguliere expressie (PCRE´s). Deze optie is experimenteel indien die gecombineerd wordt met de met \fB\-z\fP (\fB\-\^\-null\-data\fP) optie, en \fBgrep \-P\fP zou kunnen waarschuwen over niet geïmplementeerde features. .SS "Vergelijkings instellingen" .TP \fB\-e\fP\fI PATRONEN\fP,\fB \-\^\-regexp=\fP\fIPATRONEN\fP Gebruik \fIPATRONEN\fP als patronen. Als deze optie meerdere keren gebruikt of gecombineerd wordt de met \fB\-f\fP (\fB\-\^\-file\fP) optie, zoek dan alle gegeven patronen. Deze optie kan gebruikt worden om patronen die beginnen met "\-" te beschermen. .TP \fB\-f\fP\fI BESTAND\fP,\fB \-\^\-file=\fP\fIBESTAND\fP Lees de patronen uit \fIBESTAND\fP, een per regel. Als deze optie meerdere keren gebruikt of gecombineerd wordt de met \fB\-e\fP (\fB\-\^\-regexp\fP) optie, zoek dan alle gegeven patronen. Een leeg bestand bevat geen patronen en vergelijkt daarom niets. .TP \fB\-i\fP, \fB\-\^\-ignore\-case\fP Negeer het verschil tussen hoofd\- en kleine letters in patronen en de invoer bestanden, zodat alleen tekens die hierdoor verschillen bij elkaar horen. .TP \fB\-\^\-no\-ignore\-case\fP Negeer verschillen in hoofd\- en kleine letters in patronen en invoer data niet. Dit is de standaard. Deze optie is nuttig voor doorgeven naar shell scripts die al \fB\-i\fP gebruiken, om het effect te onderdrukken want de twee opties overschrijven elkaar. .TP \fB\-v\fP, \fB\-\^\-invert\-match\fP Keer de manier van vergelijken om, om niet\-passende regels te kiezen. .TP \fB\-w\fP, \fB\-\^\-word\-regexp\fP Selecteer alleen die regels die passen op hele woorden. Er wordt getest of de passende sub\-tekst aan het begin van de regel zit, of voorafgegaan door een niet\-woord teken. Net zo, moet het aan het einde van de regel zitten, of gevolgd worden door een niet\-woord karakter. Tekens die in woorden voorkomen zijn letters, cijfers en het liggende streepje. Deze optie heeft geen effect als ook \fB\-x\fP werd opgegeven. .TP \fB\-x\fP, \fB\-\^\-line\-regexp\fP Selecteer alleen die overeenkomsten die precies met een hele regel overeenkomen. Voor een reguliere expressie patroon, komt dit overeen met het tussen haakjes zetten van het patroon en het omgeven met \fB^\fP en \fB$\fP. .TP \fB\-y\fP Verouderd synoniem voor \fB\-i\fP. .SS "Algemene uitvoer instellingen" .TP \fB\-c\fP, \fB\-\^\-count\fP Onderdruk normale uitvoer; druk in plaats daarvan een optelling van de passende regels af voor elk invoer bestand. Met de \fB\-v\fP, \fB\-\^\-invert\-match\fP optie (zie onder), tel niet\-overeenkomende regels. .TP \fB\-\^\-color\fP[\fB=\fP\fIWANNEER\fP], \fB\-\^\-colour\fP[\fB=\fP\fIWANNEER\fP] Omgeeft de gevonden (niet\-lege) teksten, passende regels, context regels, bestandsnamen, regel nummers, byte afstand, en de scheiders (voor velden en groepen van context regels) met stuurcodes om ze in kleur op de terminal te tonen. De kleuren zijn bepaald in de omgevingsvariabele \fBGREP_COLORS\fP. De afgekeurde omgevingsvariabele \fBGREP_COLOR\fP wordt nog ondersteund, maar de instelling heeft geen prioriteit. \fIWHEN\fP is \fBnever\fP, \fBalways\fP, of \fBauto\fP. .TP \fB\-L\fP, \fB\-\^\-files\-without\-match\fP Onderdruk gewone uitvoer; druk in plaats daarvan de naam van elk invoer bestand af waar normaal geen uitvoer van zou zijn worden afgedrukt. Het zoeken zal stoppen bij de eerste overeenkomst. .TP \fB\-l\fP, \fB\-\^\-files\-with\-matches\fP Onderdruk gewone uitvoer; druk in plaats daarvan de naam van elk invoer bestand af waar normaal uitvoer van zou zijn worden afgedrukt. Het zoeken zal stoppen bij de eerste overeenkomst. .TP \fB\-m\fP\fI AANTAL\fP,\fB \-\^\-max\-count=\fP\fIAANTAL\fP Stop met het lezen van een bestand na \fINUM\fP overeenkomende regels. Als de invoer gelezen wordt van standaard invoer van een normaal bestand, en \fINUM\fP passende regels werden getoond, dan zal \fBgrep\fP er voor zorgen dat de standaard invoer wordt gezet precies na de laatste passende regel voor dat het stopt, ook al zijn er nakomende context regels. Dit zorgt ervoor dat het aanroepende proces kan doorgaan met zoeken. Als \fBgrep\fP stopt na \fINUM\fP passende regels, zal het nog volgende context regels tonen. Indien de \fB\-c\fP of \fB\-\^\-count\fP optie werd gebruikt, dan zal \fBgrep\fP geen teller groter dan \fINUM\fP tonen. Als ook de \fB\-v\fP of \fB\-\^\-invert\-match\fP werd gebruikt, dan zal \fBgrep\fP stoppen na het tonen van \fINUM\fP niet\-passende regels. .TP \fB\-o\fP, \fB\-\^\-only\-matching\fP Toon alleen gevonden (niet\-lege) delen van de gevonden regel, met elk deel op een aparte uitvoer regel. .TP \fB\-q\fP, \fB\-\^\-quiet\fP, \fB\-\^\-silent\fP Stil; schrijf niets naar standaard uitvoer. Stop onmiddellijk met een nul eind waarde wanneer een overeenkomst werd gevonden, zelfs als een fout was vastgesteld. Zie ook de \fB\-s\fP of \fB\-\^\-no\-messages\fP optie. .TP \fB\-s\fP, \fB\-\^\-no\-messages\fP Onderdruk fout berichten over niet\-bestaande of onleesbare bestanden. .SS "Uitvoer regel voorvoegsel instellingen" .TP \fB\-b\fP, \fB\-\^\-byte\-offset\fP Toon de 0\-gebaseerde byte positie in het invoer bestand voor elke regel van de uitvoer. Toon de positie van het gevonden deel zelf als \fB\-o\fP (\fB\-\^\-only\-matching\fP) is opgegeven. .TP \fB\-H\fP, \fB\-\^\-with\-filename\fP Toon de bestandsnaam voor elke vondst. Dit is standaard wanneer er meer dan een bestand doorzocht moet worden. .TP \fB\-h\fP, \fB\-\^\-no\-filename\fP Onderdruk het voorvoegen van bestandsnamen in de uitvoer. Dit is standaard wanneer er precies een bestand (of alleen standaard invoer) doorzocht wordt. .TP \fB\-\^\-label=\fP\fILABEL\fP Toon invoer komende van standaard invoer als invoer afkomstig van bestand \fILABEL\fP. Dit is nuttig voor commando´s die de bestand inhoud transformeren vóór het doorzoeken, b.v. \fBgzip \-cd foo.gz | grep \-\^\-label=foo \-H 'some pattern'\fP. Zie ook de \fB\-H\fP optie. .TP \fB\-n\fP, \fB\-\^\-line\-number\fP Voeg vóór elke regel uitvoer het regelnummer toe in het invoer bestand. .TP \fB\-T\fP, \fB\-\^\-initial\-tab\fP Zorg ervoor dat het eerste teken van een regel inhoud op een tabstop ligt, waarmee de uitlijning van tabs normaal uit ziet. Dit is nuttig samen met de opties die hun uitvoer vooraf laten gaan met de inhoud: \fB\-H\fP,\fB\-n\fP, and \fB\-b\fP. Om de kans te vergroten dat de regels van een enkel bestand zullen starten in dezelfde kolom, zal het regelnummer en de byte positie (indien aanwezig) getoond worden in de minimale veld breedte. .TP \fB\-u\fP, \fB\-\^\-unix\-byte\-offsets\fP Rapporteer Unix\-stijl byte posities. Deze optie veroorzaakt dat \fBgrep\fP byte posities rapporteert alsof het bestand een Unix\-stijl tekst bestand was, o.a. met CR tekens verwijderd. Dit zal dezelfde uitkomsten opleveren als het uitvoeren van \fBgrep\fP op een Unix machine. Deze optie heeft geen gevolg tenzij de \fB\-b\fP optie ook wordt gebruikt; het heeft geen gevolg op andere platformen dan MS\-DOS en MS\-Windows. .TP \fB\-Z\fP, \fB\-\^\-null\fP Voer een nul byte (het ASCII \fBNUL\fP karakter) uit, in plaats van het karakter dat gewoonlijk volgt op een bestandsnaam. Bijvoorbeeld, \fBgrep \-lZ\fP voert een nul byte uit na elke bestandsnaam, in plaats van de gewone nieuwe regel. Deze optie maakt de uitvoer eenduidig, zelfs bij het voorkomen van bestandsnamen die ongewone karakters zoals nieuwe regels bevatten. Deze optie kan worden gebruikt met opdrachten zoals \fBfind \-print0\fP, \fBperl \-0\fP, \fBsort \-z\fP en \fBxargs \-0\fP om willekeurige bestandsnamen te verwerken, zelfs als die nieuwe regel\-tekens bevatten. .SS "Context Regel Instellingen" .TP \fB\-A\fP\fI AANTAL\fP,\fB \-\^\-after\-context=\fP\fIAANTAL\fP Toon \fINUM\fP regels van voorafgaande context na gevonden regels. Plaatst een regel die de groep scheider (\fB\-\^\-\fP) bevat tussen opeenvolgende groep van vondsten. Met de \fB\-o\fP of \fB\-\^\-only\-matching\fP optie, heeft dit geen effect en er zal een waarschuwing gegeven worden. .TP \fB\-B\fP\fI AANTAL\fP,\fB \-\^\-before\-context=\fP\fIAANTAL\fP Toon \fINUM\fP regels van voorafgaande context na gevonden regels. Plaatst een regel die de groep scheider (\fB\-\^\-\fP) bevat tussen opeenvolgende groep van vondsten. Met de \fB\-o\fP of \fB\-\^\-only\-matching\fP optie, heeft dit geen effect en er zal een waarschuwing gegeven worden. .TP \fB\-C\fP\fI AANTAL\fP,\fB \-\fP\fIAANTAL\fP,\fB \-\^\-context=\fP\fIAANTAL\fP Toon \fINUM\fP regels context. Plaatst een regel die de groep scheider (\fB\-\^\-\fP) bevat tussen opeenvolgende groep van vondsten. Met de \fB\-o\fP of \fB\-\^\-only\-matching\fP optie, heeft dit geen effect en er zal een waarschuwing gegeven worden. .SS "Bestand en Map Selectie" .TP \fB\-a\fP, \fB\-\^\-text\fP Verwerk een binair bestand alsof het tekst was; dit is equivalent aan de \fB\-\^\-binary\-files=text\fP optie. .TP \fB\-\^\-binary\-files=\fP\fISOORT\fP Als de data of metadata van een bestand aangeeft dat het bestand binaire data bevat, neem dan aan de het bestand van type \fITYPE\fP is. Niet\-tekst bytes geven binaire data aan; dit zijn ofwel uit voer bytes die niet goed gecodeerd zijn voor de huidige locale , of nul invoer bytes indien de \fB\-z\fP optie niet opgegeven werd. .IP Standaard zullen \fISOORT\fP \fBbinair\fP, en \fBgrep\fP uitvoer onderdrukken na een het ontdekken van een nul in de binaire invoer, en ook uitvoer regels onderdrukken die ongeldige gecodeerde data bevatten. Indien uitvoer werd onderdrukt, dan zal \fBgrep\fP zal de uitvoer voorzien van een bericht met de mededeling dat een binair bestand gevonden werd. .IP Als \fISOORT\fP \fBwithout\-match\fP is, dan zal wanneer \fBgrep\fP nul invoer binaire data ontdekt het aanneemt dat de rest van het bestand niet overeenkomt; dit is gelijk aan de \fB\-I\fP optie. .IP Als \fISOORT\fP \fBtext\fP is, dan verwerkt \fBgrep\fP een binair bestand alsof het tekst was; dit is gelijk aan de \fB\-a\fP optie. .IP Wanneer \fISOORT\fP \fBbinary\fP is, dan kan \fBgrep\fP niet\-tekst bytes als regel einden behandelen zelfs zonder de \fB\-z\fP optie is. Dit betekent dat \fBbinary\fP versus \fBtext\fP kan beïnvloeden dat een patroon op een bestand past. Bijvoorbeeld, wanneer \fISOORT\fP gelijk is aan \fBbinary\fP dan \fBq$ kan\fP patroon overeenkomen met \fBq\fP onmiddellijk gevolgd door een nul\-byte, zelfs als die niet past wanneer \fISOORT\fP gelijk is aan \fBtext\fP. Andersom, wanneer \fISOORT\fP is \fBbinary\fP dan komt \fB.\&\fP (period) niet overeen met een nul byte. .IP \fIWaarschuwing:\fP \fBgrep \-\^\-binary\-files=text\fP kan binaire onzin genereren, wat vervelende bijeffecten kan hebben als de uitvoer naar een terminal gaat en als de terminal driver deze interpreteert als een commando. Aan de andere kant, als bestanden gelezen worden waarvan de codering onbekend is, dan kan het helpen om \fB\-a\fP op te geven of om \fBLC_ALL=C\fP in de omgeving te zetten, om zo meer overeenkomsten te vinden zelfs als deze niet veilig zijn om meteen te tonen. .TP \fB\-D\fP\fI ACTIE\fP,\fB \-\^\-devices=\fP\fIACTIE\fP Als het invoer bestand een apparaat is, FIFO of socket, gebruik dan \fIACTIE\fP om het te verwerken. Standaard, \fIACTIE\fP is \fBread\fP, hetgeen betekent dat apparaten gelezen worden net als dat het normale bestanden waren. Als \fIACTIE\fP is \fBskip\fP dan worden apparaten overgeslagen. .TP \fB\-d\fP\fI ACTIE\fP,\fB \-\^\-directories=\fP\fIACTIE\fP Als een invoer bestand een map is, gebruik \fIACTIE\fP om het te verwerken. Normaal is \fIACTIE\fP \fBread\fP, wat betekend dat mappen gelezen worden alsof het gewone bestanden waren. Als \fIACTIE\fP \fBskip\fP is, worden mappen in stilte overgeslagen. Als \fIACTIE\fP \fBrecurse\fP is, leest \fBgrep\fP alle bestanden in elke map, recursief, alleen symbolische koppelingen volgend als die op de commando regel stonden. Dit is gelijk aan de \fB\-r\fP optie. .TP \fB\-\^\-exclude=\fP\fIBESTANDSPATROON\fP Sla elke commando\-regel bestand over met een achtervoegsel dat past op het patroon \fIGLOB\fP, gebruik makend van jokerteken; een naam achtervoegsel is of de volledige naam of een volgend deel dat begint met een niet\-slash teken onmiddellijk na de slash (\fB/\fP) in de naam. Als er recursief gezocht wordt, sla dan elke bestand over waarvan de basis naam past op \fIGLOB\fP; de basis naam is het deel na de laatste slash. Een patroon mag \fB*\fP, \fB?\fP, en \fB[\fP.\|.\|.\fB]\&\fP als jokertekens, en \fB\e\fP gebruiken om een jokerteken of backslash teken letterlijk te citeren. .TP \fB\-\^\-exclude\-from=\fP\fIBESTAND\fP Sla bestanden over waarvan de basis naam past op een van de algemene bestandsnamen gelezen van \fIBESTAND\fP (gebruik jokerteken passend zoals beschreven onder \fB\-\^\-exclude\fP). .TP \fB\-\^\-exclude\-dir=\fP\fIBESTANDSPATROON\fP Sla elke commando\-regel map over met een achtervoegsel dat past op het patroon \fIGLOB\fP. Als er recursief gezocht wordt, sla een map over waarvan de basis naam past op \fIGLOB\fP. Negeer overtollige slashes achter in \fIGLOB\fP. .TP \fB\-I\fP Verwerk een binair bestand als of het geen passende gegevens bevatte; dit is gelijk aan de \fB\-\^\-binary\-files=without\-match\fP optie. .TP \fB\-\^\-include=\fP\fIBESTANDSPATROON\fP Zoek alleen bestanden waarvan de basis naam past op \fIGLOB\fP (gebruik van jokerteken zoals beschreven in \fB\-\^\-exclude\fP). Als daarentegen de \fB\-\^\-include\fP en de \fB\-\^\-exclude\fP opties werden opgegeven, dan wordt een bestand mee genomen tenzij de eerste van die opties \fB\-\^\-include\fP is. .TP \fB\-r\fP, \fB\-\^\-recursive\fP Lees alle bestanden in elke map, recursief, symbolische koppelingen volgens alleen als ze op de commando regel stonden. Merk op dat als geen bestand werd gegeven, \fBgrep\fP alleen in de werk map zoekt. Dit is equivalent aan de \fB\-drecurse\fP optie. .TP \fB\-R\fP, \fB\-\^\-dereference\-recursive\fP Lees alle bestanden in elke map, recursief. Volg alle symbolische koppelingen, in tegenstelling to \fB\-r\fP. .SS "Andere Opties" .TP \fB\-\^\-line\-buffered\fP Gebruik regel buffering bij uitvoer. Dit kan een prestaties kosten. .TP \fB\-U\fP, \fB\-\^\-binary\fP Behandel de bestand(en) als binair. Standaard, onder MS\-DOS en MS\-win, gokt \fBgrep\fP of een bestand een tekst of binair bestand is zoals beschreven voor de \fB\-\^\-binary\-files\fP optie . Als \fBgrep\fP besluit dat het bestand een tekst bestand is haalt het de CR karakters uit de originele bestand inhoudt (om reguliere expressies met \fB^\fP en \fB$\fP goed te laten werken). Opgeven van \fB\-U\fP overstemd dit gokken, en veroorzaakt dat alle bestanden gelezen worden en doorgegeven worden aan het "passen\-op"\-mechanisme. Hoe dan ook, als een bestand een tekst bestand met CR/LF paren aan het einde van elke regel is, zal dat ervoor zorgen dat sommige reguliere expressies zullen falen. Deze optie heeft geen zin op andere platformen anders dan MS\-DOS en MS\-Windows. .TP \fB\-z\fP, \fB\-\^\-null\-data\fP Behandel invoer en uitvoer data als opeenvolgende regels, elke afgesloten met een nul\-byte (het ASCII NUL teken) in plaats van een nieuwe regel. Net als de \fB\-Z\fP of \fB\-\^\-null\fP optie, kan deze optie gebruikt worden met commando´s zoals \fBsort \-z\fP om willekeurige bestandsnamen te verwerken. . .SH "REGULIERE EXPRESSIES" Een reguliere expressie is een patroon dat een verzameling teksten beschrijft. Reguliere expressies worden op dezelfde manier gebouwd als rekenkundige expressies: door met gebruik van verschillende operatoren kleinere delen samen te binden. .PP \fBgrep\fP begrijpt drie verschillende versies van reguliere\-expressies syntaxis: \*(lqbasic\*(rq (BRE), \*(lqextended\*(rq (ERE) and \*(lqperl\*(rq (PCRE). In GNU \fBgrep\fP is er geen verschil in bruikbaarheid tussen de drie versies. In andere implementaties zijn basis reguliere expressies minder krachtig. De volgende beschrijving gaat op voor uitgebreide reguliere expressies; verschillen met de basis reguliere expressies worden naderhand samengevat. Perl\-compatibele reguliere expressies geven additionele functionaliteit, en zijn gedocumenteerd in pcresyntax(3) en pcrepattern(3), maar werken alleen als PCRE beschikbaar is in het systeem .PP De fundamentele bouwstenen zijn de reguliere expressies, die passen op een enkel karakter. De meeste tekens, ook alle letters en cijfers, zijn reguliere expressies die op zichzelf passen. Elk meta\-teken met een speciale betekenis kan geciteerd worden door het vooraf te laten gaan door een backslash. .PP De punt \fB.\&\fP past elk enkelvoudig karakter. Het is niet gespecificeerd of het past op een codering fout. .SS "Teken klassen en Expressies met Haakjes" Een \fIhaakjes expressie\fP is een lijst van tekens omsloten door \fB[\fP en \fB]\fP. Het past elk enkelvoudig teken van die lijst. Als het eerste karakter van de lijst het dakje \fB^\fP is, dan past het elk enkelvoudig teken \fIniet\fP in die lijst. Het is niet gespecificeerd of het past op een codering fout. Bijvoorbeeld, de reguliere expressie \fB[0123456789]\fP past elk enkelvoudig cijfer. .PP In een haakjes expressie, bestaat een \fIbereik expressie\fP uit twee tekens gescheiden door een koppelteken. Dit vind elk enkel teken dat past tussen twee de twee tekens, inclusief, het gebruik van de taaldefinitie verzameling volgorde en teken set. Bij voorbeeld, in de standaard C taaldefinitie, \fB[a\-d]\fP is equivalent aan \fB[abcd]\fP. Veel locales sorteren tekens in woord volgorde, en in deze is \fB[a\-d]\fP gewoonlijk niet equivalent \fB[abcd]\fP; het kan equivalent zijn aan \fB[aBbCcDd]\fP, bij voorbeeld. Om de klassieke interpretatie van haakjes expressie te verkrijgen, kun je best de C taaldefinitie instellen door het zetten van de \fBLC_ALL\fP omgevingsvariabele op de waarde \fBC\fP. .PP Tenslotte, bepaalde benoemde klassen van tekens zijn voorgedefinieerd. Hun namen spreken voor zichzelf, en het zijn \fB[:alnum:]\fP, \fB[:alpha:]\fP, \fB[:cntrl:]\fP, \fB[:digit:]\fP, \fB[:graph:]\fP, \fB[:lower:]\fP, \fB[:print:]\fP, \fB[:punct:]\fP, \fB[:space:]\fP, \fB[:upper:]\fP en \fB[:xdigit:]\fP. Bijvoorbeeld \fB[[:alnum:]]\fP betekend \fB[0\-9A\-Za\-z]\fP, behalve dat de laatste vorm afhankelijk is van de POSIX taaldefinitie en de ASCII tekenset, terwijl de eerste onafhankelijk is van taaldefinitie en tekenset. (Merk op dat de rechte haakjes in deze klasse namen onderdeel zijn van de symbolische namen, en ook gegeven moeten worden bij de ook al rechte haakjes die de rechte\-haakjes\-lijst omsluiten.) De meeste meta\-tekens verliezen hun speciale betekenis binnen een lijst. Om een letterlijke \fB]\fP op te geven, plaats het als eerste in de lijst. Hetzelfde idee voor een letterlijke \fB^\fP, plaats het overal behalve als eerste. Tenslotte, om een letterlijke \fB\-\fP bij te voegen, plaats het als laatste. .SS Verankering Het dakje \fB^\fP en het dollar teken \fB$\fP zijn meta\-tekens die op respectievelijk de lege string aan het begin, en aan het einde van een regel passen. .SS "Het backslash teken en Speciale Expressies" De symbolen \fB\e<\fP en \fB\e>\fP passen respectievelijk de lege tekst aan het begin, en aan het einde van een woord. Het symbool \fB\eb\fP past de lege string aan de rand van een woord, en \fB\eB\fP past de lege string als het \fIniet\fP de rand van een woord is. Het symbool \fB\ew\fP is een synoniem voor \fB[_[:alnum:]]\fP en \fB\eW\fP is een synoniem voor \fB[^_[:alnum:]]\fP. .SS Herhaling Een reguliere expressie mag gevolgd worden door een of meerdere herhaal operatoren: .PD 0 .TP \fB?\fP Het voorgaande item is optioneel en paste ten hoogste één keer. .TP \fB*\fP Het voorgaande item zal nul of meer keer gepast worden. .TP \fB+\fP Het voorgaande item zal één of meer keer gepast worden. .TP \fB{\fP\fIn\fP\fB}\fP Het voorgaande item zal precies \fIn\fP keer gepast worden. .TP \fB{\fP\fIn\fP\fB,}\fP Het voorgaande item zal \fIn\fP of meer keer gepast worden. .TP \fB{,\fP\fIm\fP\fB}\fP Het voorafgaande item past op zijn meest \fIm\fP keer. Dit is een GNU uitbreiding. .TP \fB{\fP\fIn\fP\fB,\fP\fIm\fP\fB}\fP Het voorgaande item zal minstens \fIn\fP keer, maar niet meer dan \fIm\fP keer gepast worden. .PD .SS Concatenatie Twee reguliere expressies kunnen worden geconcateneerd; de reguliere expressie die dat oplevert past elk tekst die bestaat uit de twee samen gevoegde sub\-teksten die op de twee respectievelijke sub\-expressies passen. .SS Afwisseling Twee reguliere expressies kunnen samengevoegd worden door de invoeg operator \fB|\fP; de reguliere expressie die dat oplevert past elke string die of de ene, of de andere sub\-expressie past. .SS Voorrang Herhaling heeft voorrang boven achter elkaar aanzetten, wat weer voorrang heeft boven wisselen. Een hele sub\-expressie kan omgeven worden door haakjes om deze voorrangsregels te omzeilen. .SS "Terugverwijzingen en Sub\-expressies" De terugverwijzing \fB\e\fP\fIn\fP\&, waar \fIn\fP een enkel cijfer is, past de sub\-tekst daarvóór gepast door de \fIn\fPde met haakjes omsloten sub\-tekst in de reguliere expressie. .SS "Basis versus uitgebreide Reguliere Expressies" In basis reguliere expressies verliezen de meta\-tekens \fB?\fP, \fB+\fP, \fB{\fP, \fB|\fP, \fB(\fP en \fB)\fP hun speciale betekenis; in plaats daarvan gebruik de versies met backslash \fB\e?\fP, \fB\e+\fP, \fB\e{\fP, \fB\e|\fP, \fB\e(\fP en \fB\e)\fP. . .SH "EIND WAARDE" Normaal is de eind waarde 0 als er overeenkomsten werden gevonden, en 1 als geen overeenkomsten werden gevonden en 2 als er een fout optrad. Hoewel, als of \fB\-q\fP of \fB\-\^\-quiet\fP of \fB\-\^\-silent\fP werd gebruikt en een regel werd gevonden, dan is de eind waarde 0 zelfs als er een fout optrad. . .SH OMGEVING Het gedrag van \fBgrep\fP wordt beïnvloed door de volgende omgevingsvariabelen .PP De taaldefinitie van de categorie \fBLC_\fP\fIfoo\fP wordt gespecificeerd door drie omgevingsvariabelen \fBLC_ALL\fP, \fBLC_\fP\fIfoo\fP, \fBLANG\fP in die volgorde te bekijken. De eerste van deze variabelen die is gezet bepaald de taaldefinitie. Bij voorbeeld, als \fBLC_ALL\fP niet is gezet, maar \fBLC_MESSAGES\fP is gezet op \fBpt_BR\fP, dan wordt de Braziliaans\-Portugese taaldefinitie gebruikt voor de \fBLC_MESSAGES\fP categorie. De C taaldefinitie wordt gebruikt als geen enkele taaldefinitie is gezet, als de taal catalogus niet werd geïnstalleerd, of \fBgrep\fP werd niet gebouwd met nationale taal ondersteuning (NLS). Het shell commando \fBlocale \-a\fP toont beschikbare taaldefinities. .TP \fBGREP_COLOR\fP Deze variabele bepaald de kleur die gebruikt wordt om gevonden (niet lege) \ tekst te accentueren. Hij is afgekeurd ten gunste van \fBGREP_COLORS\fP, maar wordt nog ondersteund. De \fBmt\fP, \fBms\fP, en \fBmc\fP vormen van \fBGREP_COLORS\fP hebben hogere prioriteit. Hij kan alleen de kleur die gebruikt wordt om gevonden niet\-lege tekst te accentueren in een gevonden regel (een gevonden regel als de \fB\-v\fP commando\-regel optie werd weggelaten, of een context regel als \fB\-v\fP werd opgegeven), De standaard is \fB01;31\fP, hetgeen een rode voorgrond tekst op de standaard achtergrond van de terminal inhoud. .TP \fBGREP_COLORS\fP Specificeert kleuren en andere attributen die gebruikt kunnen worden om de diverse onderdelen van de uitvoer te accentueren. Zijn waarde is een komma\-gescheiden lijst van mogelijkheden met \fBms=01;31:mc=01;31:sl=:cx=:fn=35:ln=32:bn=32:se=36\fP als standaard waarde en de \fBrv\fP en \fBne\fP logische mogelijkheden zijn weggelaten (m.a.w. onwaar). Ondersteunde mogelijkheden zijn de volgende. .RS .TP \fBsl=\fP SGR sub\-tekst voor compleet geselecteerde regels (m.a.w. passende regels als de \fB\-v\fP commando\-regel optie werd weggelaten, of niet\-passende regels als \fB\-v\fP werd opgegeven). Als zowel de logische \fBrv\fP optie en de \fB\-v\fP commando\-regel opgegeven werden, dan is dit van toepassing op passende contex regels. De standaard is leeg (m.a.w. het standaard kleuren paar van de terminal). .TP \fBcx=\fP SGR sub\-tekst for hele context regels (m.a.w. niet\-passende regels als de \fB\-v\fP commando\-regel optie is weggelaten, or passend regels als \fB\-v\fP werd opgegeven. Als echter zowel de logische \fBrv\fP als de \fB\-v\fP commando\-regel optie werden opgegeven, dan is dit alleen van toepassing op geselecteerde niet\-passende regels. De standaard is leeg (.m.a.w. het standaard kleuren paar van de terminal). .TP \fBrv\fP Logische waarde dat de betekenis omdraait van de \fBsl=\fP and \fBcx=\fP capabilities indien de \fB\-v\fP command\-regel optie werd gespecificeerd. De standaard is ONWAAR (m.a.w. the capaciteit is weggelaten). .TP \fBmt=01;31\fP SGR sub\-tekst voor passende niet\-lege tekst in ieder passend regel (m.a.w., een geselecteerde regel wanneer de \fB\-v\fP commando\-regel optie werd weggelaten, of een context regel als \fB\-v\fP werd opgegeven. Deze instelling is equivalent aan het instellen van \fBms=\fP en \fBmc=\fP in een keer op dezelfde waarde. De standaard is vette rode tekst in de voorgrond tegen de bestaande regel achtergrond. .TP \fBms=01;31\fP SGR sub\-tekst voor passende niet\-lege tekst in een passende regel (dit wordt alleen gebruikt als de \fB\-v\fP commando\-regel optie werd weggelaten.) Het effect van de \fBsl=\fP (of \fBcx=\fP als \fBrv\fP) capaciteit blijft actief wanneer dit optreedt. De standaard is vette rode tekst in de voorgrond tegen de bestaande regel achtergrond. .TP \fBmc=01;31\fP SGR sub\-tekst voor passende niet\-lege tekst in een context regel (dit wordt alleen gebruikt als de \fB\-v\fP commando\-regel optie werd gegeven.) Het effect van de \fBcx=\fP (of \fBsl=\fP als \fBrv\fP) capaciteit blijft actief wanneer dit optreedt. De standaard is vette rode tekst in de voorgrond tegen de bestaande regel achtergrond. .TP \fBfn=35\fP SGR sub\-tekst voor bestandsnamen die vooraf gaan aan een regel inhoud. De standaard is magenta tekst voorgrond tegen de standaard terminal achtergrond. .TP \fBln=32\fP SGR sub\-tekst voor regel nummer die vooraf gaan aan een regel inhoud. De standaard is groene tekst voorgrond tegen de standaard terminal achtergrond. .TP \fBbn=32\fP SGR sub\-tekst voor byte posities die vooraf gaan aan een regel inhoud. De standaard is groene tekst voorgrond tegen de standaard terminal achtergrond. .TP \fBse=36\fP SGR sub\-tekst voor scheiders die zijn ingevoegd tussen geselecteerde regel velden (\fB:\fP, tussen context regel velden, (\fB\-\fP, en tussen groepen van aansluitende regels als een niet\-lege context werd opgegeven (\fB\-\^\-\fP). De standaard is cyaan tekst voorgrond tegen de standaard terminal achtergrond. .TP \fBne\fP Logische waarde die het wissen tot regel einde voor komt door gebruik van Erase in Line (EL) naar Rechts (\fB\e33[K\fP) elke keer een gekleurd item eindigt. Dit is nodig op terminals waar EL niet ondersteund wordt. Het is ook nuttig op terminals waar de \fBback_color_erase\fP (\fBbce\fP) logische terminfo capaciteit niet van toepassing is, wanneer de gekozen opvallende kleuren niet van invloed zijn op de achtergrond, of wanneer EL te langzaam is en flakker veroorzaakt. De standaard is ONWAAR (m.a.w. de capaciteit wordt weggelaten). .PP Merk op dat de logische capaciteiten geen \fB=\fP.\|.\|.\& deel hebben. Ze worden standaard weggelaten (m.a.w. ONWAAR) en worden WAAR indien opgegeven. .PP Zie de Select Graphic Rendition (SGR) sectie in de documentatie van de tekst terminal die wordt gebruikt om toegestane waarden en hun betekenis als tekst attributen. Deze sub\-tekst waarden zijn gehele getallen in decimale notatie en kunnen worden geconcateneerd met puntkomma´s. \fBgrep\fP zorgt voor het samenstellen van het resultaat in een complete SGR sequentie (\fB\e33[\fP.\|.\|.\fBm\fP). Voorkomende waarden voor concatenatie zijn o.m. \fB1\fP voor vet, \fB4\fP voor onderstrepen, \fB5\fP voor knipperen, \fB7\fP voor omkeren, \fB39\fP voor standaard voorgrond kleur, \fB30\fP tot \fB37\fP voor voorgrond kleuren, \fB90\fP tot \fB97\fP voor 16\-kleurenmode voorgrond kleuren, \fB38;5;0\fP tot \fB38;5;255\fP for 88\-kleuren and 256\-kleuren modes voorgrond kleuren, \fB49\fP voor default achtergrond kleur, \fB40\fP tot \fB47\fP voor achtergrond kleuren, \fB100\fP tot \fB107\fP for 16\-kleuren mode achtergrond kleuren, and \fB48;5;0\fP tot \fB48;5;255\fP voor 88\-kleuren en 256\-kleuren modes achtergrond kleuren. .RE .TP \fBLC_ALL\fP, \fBLC_COLLATE\fP, \fBLANG\fP Deze variabelen specificeren de taaldefinitie voor de \fBLC_COLLATE\fP categorie, deze bepaald de verzameling volgorde die gebruikt wordt om bereik expressies te ontleden zoals \fB[a\-z]\fP. .TP \fBLC_ALL\fP, \fBLC_CTYPE\fP, \fBLANG\fP Deze variabelen geven de \fBLC_CTYPE\fP taaldefinitie op, die het soort karakters bepaalt, o.a. welke tekens witruimte zijn. De taaldefinitie wordt bepaald door de eerste van deze variabelen die is gezet. De POSIX taaldefinitie wordt gebruikt als geen van deze omgevingsvariabelen zijn gezet, of als de taaldefinitie verzameling niet is geïnstalleerd, of als \fBgrep\fP niet was gecompileerd met talen ondersteuning (NLS) .TP \fBLC_ALL\fP, \fBLC_MESSAGES\fP, \fBLANG\fP Deze variabelen specificeren de \fBLC_MESSAGES\fP categorie, die de taal bepaalt die \fBgrep\fP gebruikt voor berichten. De standaard C taaldefinitie gebruikt Amerikaans Engelse berichten. .TP \fBPOSIXLY_CORRECT\fP Indien gezet gedraagt \fBgrep\fP zich zoals POSIX; anders gedraagt \fBgrep\fP zich meer zoals andere GNU programma's. POSIX vereist dat de opties die volgen op bestandsnamen, behandeld moeten worden als bestandsnamen; standaard worden dergelijke opties verplaatst naar het begin van de operanden lijst en worden behandeld als opties. Ook eist POSIX dat de niet herkende opties als "onwettig" worden aangemerkt, maar omdat ze niet echt tegen de wet zijn worden ze normaal aangemerkt als "ongeldig". \fBPOSIXLY_CORRECT\fP zet ook \fB_\fP\fIN\fP\fB_GNU_nonoption_argv_flags_\fP uit, hieronder beschreven. .TP \fB_\fP\fIN\fP\fB_GNU_nonoption_argv_flags_\fP (Hier is \fIN\fP \fBgrep\fP's numerieke proces ID.) Als het \fIi\fPde teken van deze omgevingsvariabele waarde \fB1\fP is, beschouw het \fIi\fPde operand voor \fBgrep\fP niet als een optie, zelfs als het er een lijkt te zijn. De shell kan deze variabele in de omgeving plaatsen voor elke opdracht die het start, daarmee opgevend welke operanden het resultaat zijn van jokerteken expansie en daarom niet behandeld zou moeten worden als een optie. Dit gedrag is alleen beschikbaar met de GNU C bibliotheek, en alleen wanneer \fBPOSIXLY_CORRECT\fP niet gezet is. . .SH OPMERKINGEN Deze handleiding wordt sporadisch onderhouden; de volledige documentatie is vaker beter bijgewerkt. . .SH COPYRIGHT Copyright 1998\-2000, 2002, 2005\-2020 Free Software Foundation, Inc. .PP Dit is vrije software; zie de programmatekst voor de kopieervoorwaarden. Er is GEEN garantie; zelfs niet voor VERKOOPBAARHEID of GESCHIKTHEID VOOR EEN BEPAALD DOEL. . .SH BUGS .SS "Bugs Rapporteren" Email bug rapporten naar .MT bug\-grep@gnu.org het bug\-rapportage adres .ME . Een .UR https://lists.gnu.org/mailman/listinfo/bug\-grep email archief .UE en een .UR https://debbugs.gnu.org/cgi/pkgreport.cgi?package=grep bug volger .UE zijn beschikbaar. .SS "Bekende Bugs" Grote herhalingsaantallen voor de \fB{\fP\fIn\fP\fB,\fP\fIm\fP\fB}\fP bouwsteen kunnen zorgen dat grep veel geheugen gebruikt. Daar bovenop kunnen sommige obscure reguliere expressies exponentieel meer tijd en ruimte vragen, en kunnen ervoor zorgen dat het geheugen voor \fBgrep\fP opraakt. .PP Terugverwijzingen zijn heel langzaam, en kunnen exponentieel meer tijd vragen. . .SH VOORBEELD Het volgende voorbeeld toont locatie en inhoud van elke regel die "f" bevat en eindigt op ".c", in elk bestand in de huidige werkmap waarvan de naam "g" bevat en eindigt in "*.h". De \fB\-n\fP optie toont regel nummers, het \fB\-\-\fP argument behandelt expansie van "*g*.h" beginnend met "\-" als bestandsnamen niet als opties, en het lege bestand /dev/null zorgt er voor dat bestandsnamen getoond worden zelfs als alleen een bestandsnaam van de vorm "*g*.h" is. .PP .in +2n .EX $ \fBgrep\fP \-n \-\- 'f.*\e.c$' *g*.h /dev/null argmatch.h:1:/* definitions and prototypes for argmatch.c .EE .in .PP De enige regel dit past is regel 1 van argmatch.h. Merk op dat de reguliere expressie syntaxis gebruikt in het patroon verschilt van de globbing syntaxis die de shell gebruikt om bestandsnamen te zoeken. . .SH "ZIE OOK" .SS "Reguliere Handleidingen" \fBawk\fP(1), \fBcmp\fP(1), \fBdiff\fP(1), \fBfind\fP(1), \fBperl\fP(1), \fBsed\fP(1), \fBsort\fP(1), \fBxargs\fP(1), \fBread\fP(2), \fBpcre\fP(3), \fBpcresyntax\fP(3), \fBpcrepattern\fP(3), \fBterminfo\fP(5), \fBglob\fP(7), \fBregex\fP(7). .SS "Volledige documentatie" Een .UR https://www.gnu.org/software/grep/manual/ volledige handleiding .UE is beschikbaar. Als de programma's \fBinfo\fP en \fBgrep\fP correct op uw systeem zijn geïnstalleerd, dan geeft de opdracht .IP \fBinfo grep\fP .PP toegang tot de volledige handleiding. . .\" Work around problems with some troff -man implementations. .br . .\" Format for Emacs-maintained Dt string defined at this file's start. .\" Local variables: .\" time-stamp-format: "%:y-%02m-%02d" .\" End: .PP .SH VERTALING De Nederlandse vertaling van deze handleiding is geschreven door Jos Boersema , Mario Blättermann en Luc Castermans . .PP Deze vertaling is vrije documentatie; lees de .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License Version 3 .UE of later over de Copyright-voorwaarden. Er is geen AANSPRAKELIJKHEID. .PP Indien U fouten in de vertaling van deze handleiding zou vinden, stuur een e-mail naar .MT debian-l10n-dutch@lists.debian.org .ME .