Provided by: manpages-cs_0.18.20090209-3_all bug

JM'ENO

       grep, egrep, fgrep - tiskne adky, ktere odpovidaji zadanemu vzoru

POUIT'I

       grep [volby] VZOR [SOUBOR...]
       grep [volby] [-e VZOR | -f SOUBOR] [SOUBOR...]

POPIS

       Grep  prohledava  zadany  vstup  SOUBOR  (nebo  standardni vstup, pokud
       nejsou zadany adne soubory nebo  je  zadan  soubor  -)   a  hleda  adky
       obsahujici  zadany  VZOR.   Ve  vychozim  nastaveni grep vypisuje adky,
       ktere vzoru odpovidaji.

       Dostupne jsou navic dv varianty programu  -  egrep  a  fgrep.   Chovani
       programu egrep je stejne jako grep -E, chovani programu fgrep je stejne
       jako grep -F.

VOLBY

       -A POET, --after-context=POET
              Tiskni POET adk,  ktere  nasleduji  po  platnem  (odpovidajicim)
              adku.  Mezi souvisle platne vysledky vklada adky obsahujici --.

       -a, --text
              Pracuj  s  binarnim souborem jako by to byl text; ekvivalentni k
              volb --binary-files=text.

       -B POET, --before-context=POET
              Tiskni POET adk ktere pedchazeji platnemu adku.   Mezi  souvisle
              platne vysledky vklada adky obsahujici --.

       -C POET, --context=POET
              Tiskni  POET  adk ke kademu platnemu adku.  Mezi souvisle platne
              vysledky vklada adky obsahujici --.

       -b, --byte-offset
              Tiskni offset bajtu ve vstupnim souboru ped kadym adkem vystupu.

       --binary-files=TYP
              Jestlie podle prvnich nkolika bajt obsahuje soubor binarni data,
              pedpokladej, e je typu TYP.  Vychozim nastavenim TYP je binary a
              grep standardn vypie bu jednoadkovou zpravu,  e  binarni  soubor
              odpovida,  nebo  adnou  zpravu pokud neodpovida.  Jestlie je TYP
              without-match, grep pedpoklada, e binarni soubory  neodpovidaji;
              je  to  stejne  jako  volba  -I.   Jestlie  je  TYP  text,  grep
              zpracovava binarni soubor, jako by  to  byl  text;  stejne  jako
              volba  -a.   Pozor:  grep  --binary-files=text  me zpsobit, e se
              budou vypisovat nesmyslne binarni znaky,  co  me  mit  nepijemne
              vedleji uinky pokud je vystupem terminal a ovlada terminalu zane
              nktere znaky interpretovat jako pikazy.

       --colour[=KDY], --color[=KDY]
              Obklopi platny etzec znakou z promnne prostedi GREP_COLOR.   KDY
              me byt `never', `always' nebo `auto'

       -c, --count
              Potla  normalni  vystup; misto toho napi poet odpovidajicich adk
              pro kady vstupni soubor.  S volbou -v, --invert-match (viz nie),
              poitej neodpovidajici adky.

       -D AKCE, --devices=AKCE
              Pokud je vstupnim souborem zaizeni, FIFO nebo socket, pouij AKCI
              k jeho zpracovani. Vychozim nastavenim AKCE je read, to znamena,
              e  zaizeni  se tou jako by to byly bne soubory.  Jestlie AKCE je
              skip, zaizeni se mlky peskoi.

       -d AKCE, --directories=AKCE
              Pokud je vstupnim souborem adresa, pouij AKCI k jeho zpracovani.
              Vychozim  nastavenim  AKCE je read, to znamena, e adresae se tou
              jako by to byly bne soubory.  Jestlie AKCE je skip,  adresae  se
              mlky  peskoi.  Jestlie AKCE je recurse, grep te rekurzivn vechny
              soubory v kadem adresai; je to stejne jako volba -r.

       -E, --extended-regexp
              Povauj V'YRAZ za rozieny regularni vyraz (viz nie).

       -e V'YRAZ, --regexp=V'YRAZ
              Jako vzor pouij V'YRAZ; uitene pro zachovani vzor zainajicich -.

       -F, --fixed-strings
              Povauj V'YRAZ za seznam pevnych etzc oddlenych znaky konce  adku,
              ze  kterych  me  odpovidat kterykoliv.  -P, --perl-regexp Povauj
              V'YRAZ za regularni vyraz Perlu.

       -f SOUBOR, --file=SOUBOR
              Nate vzory ze souboru SOUBOR,  na  kadem  adku  jeden.   Prazdny
              soubor obsahuje nula vzor a tedy neodpovida niemu.

       -G, --basic-regexp
              Povauj  V'YRAZ  za  zakladni  regularni  vyraz (viz nie). Toto je
              vychozi nastaveni.

       -H, --with-filename
              Tiskni jmeno souboru pro kadou shodu.

       -h, --no-filename
              Potla vkladani jmen  soubor  do  vystupu  pi  prohledavani  vice
              soubor.

       --help Vytiskni strunou napovdu.

       -I     Zpracuj  binarni  soubor jako by neobsahoval shody; to je stejne
              jako volba --binary-files=without-match.

       -i, --ignore-case
              Nerozliuj velka a  mala  pismena  ve  V'YRAZU  ani  ve  vstupnich
              souborech.

       -L, --files-without-match
              Potla  normalni  vystup; misto toho tiskni jmeno kadeho souboru,
              ze ktereho by se jinak adny vystup netiskl. Prohledavani skoni s
              prvni shodou.

       -l, --files-with-matches
              Potla  normalni  vystup; misto toho tiskni jmeno kadeho souboru,
              ze ktereho by se jinak tiskl njaky vystup. Prohledavani skoni  s
              prvni shodou.

       -m POET, --max-count=POET
              Pesta  ist  soubor  po  dosaeni  POTU  odpovidajicich adk. Je-li
              vstupem standardni vstup z obyejneho souboru, a je vytitno  POET
              odpovidajicich  adk,  grep  zajisti, e standardni vstup bude ped
              ukonenim nastaven prav  po  poslednim  odpovidajicim  adku,  bez
              ohledu  na  pitomnost  nasledujicich adk kontextu.  Tak je mone,
              aby volajici proces hledani obnovil.  Kdy grep po  dosaeni  POTU
              odpovidajicich   adk   zastavi,   vypie   adky  kontextu,  ktere
              nasleduji.  Pokud  je  zarove  pouita  volba  -c  nebo  --count,
              program  grep  nevypie  vice  shod  ne je POET.  Pokud je zarove
              pouita volba -v  nebo  --invert-match  program,  grep  skoni  po
              vypsani POTU neodpovidajicich adk.

       --mmap Pokud  je  to  mone,  pouij  systemove  volani  mmap(2)  ke teni
              vstupnich dat, misto vychoziho read(2).  V nkterych pipadech  me
              --mmap   zlepit  vykon.  Na  druhou  stranu  --mmap  me  zpsobit
              nedefinovane chovani (vetn core dump), jestlie se vstupni soubor
              za   bhu   programu   grep   zmeni   nebo  pokud  nastane  chyba
              vstupu/vystupu.

       -n, --line-number
              Ped kady adek  vystupu  pidej  jeho  islo  v  pislunem  vstupnim
              souboru.

       -o, --only-matching
              Vypisuj jen tu ast odpovidajiciho adku, ktera je odpovida VZORU.

       --label=LABEL
              Zobrazuj   vstup   pochazejici  ze  standardniho  vstupu  jakoby
              pochazel ze souboru LABEL. To je zvlat uitene pro nastroje  jako
              je zgrep, nap.  gzip -cd foo.gz |grep --label=foo nco

       --line-buffering
              Pouij line buffering, me negativn ovlivnit vykon.

       -q, --quiet, --silent
              Tie; potla normalni vystup. Prohledavani skoni s prvni shodou, s
              navratovou hodnotou nula, i kdy  byla  detekovana  njaka  chyba.
              Viz take volba -s nebo --no-messages uvedena dale.

       -R, -r, --recursive
              Rekurzivn nati vechny soubory v kadem adresai; to je stejne jako
              volba -d recurse.

          --include=VZOR
              Rekurzivn   prochazej   adresae,   prohledavej   pouze   soubory
              odpovidajici VZORU.

          --exclude=VZOR
              Rekurzivn prochazej adresae, pesko soubory odpovidajici VZORU.

       -s, --no-messages
              Potla  chybove hlaky o neexistujicich nebo neitelnych souborech.
              Poznamka o penositelnosti: na rozdil od GNU grepu, tradini  grep
              neodpovidal  specifikaci  POSIX.2,  protoe  neml volbu -q a jeho
              volba -s se chovala jako volba -q GNU grepu.   Shellove  skripty
              ktere maji byt penositelne na tradini grep, by se mly voleb -q a
              -s vyvarovat a pesmrovat misto toho vystup do /dev/null.

       -U, --binary
              Pracuj se soubory jako s  binarnimi.  Normaln  typ  souboru  pod
              MS-DOS  a MS-Windows uruje grep tak, e se podiva na prvnich 32KB
              dat petenych ze souboru. Kdy grep rozhodne, e soubor je textovy,
              vynecha  z  pvodniho  obsahu  znaky  CR  (aby  nepestaly  spravn
              fungovat regularni vyrazy obsahujici ^ a $ ). Uvedenim volby  -U
              se  toto  pravidlo  rui a vechny soubory se pedaji porovnavacimu
              mechanismu doslovn. Pokud obsahuje soubor text s pary  CR/LF  na
              koncich  adk,  zpsobi  to,  e  nktere  regularni vyrazy pestanou
              fungovat. Tato volba nema adny uinek na  platformach  jinych  ne
              MS-DOS a MS-Windows.

       -u, --unix-byte-offsets
              Hlasit  offsety  jako v Unixu. Tento pepina zajisti, e grep bude
              tisknout offsety bajt jako by soubor byl textovy soubor v Unixu,
              tedy bez znak CR.  To znamena, e vysledky grep budou stejne jako
              v systemu Unix. Tato volba nema adny efekt bez souasneho  pouiti
              volby  -b;  take  nema  efekt  na platformach jinych ne MS-DOS a
              MS-Windows.

       -V, --version
              Vytiskni verzi programu grep na chybovy vystup. Verze by mla byt
              uvedena ve vech hlaenich chyb (viz nie).

       -v, --invert-match
              Pevra vyznam shody - vyberou se adky, ktere vzoru neodpovidaji.

       -w, --word-regexp
              Vyber  jen  adky  ve  kterych  se shoduje cele samostatne slovo.
              Odpovidajici etzec musi byt bu na zaatku adku nebo mit ped sebou
              znak ktery se nebere jako souast slova. Podobn musi etzec byt bu
              na konci adku nebo za nim musi nasledovat znak ktery  se  nebere
              jako  souast  slova.  Znaky  ktere  se povauji za asti slov jsou
              pismena, islice a podtritko.

       -x, --line-regexp
              Vyber jen shody zahrnujici cely adek.

       -y     Zastarala alternativa pro -i.

       -Z, --null
              Vytiskni nulovy  bajt  (znak  ASCII  NUL)   misto  znaku,  ktery
              normaln  nasleduje  po  jmenech  soubor.  Napiklad  grep -lZ pie
              nulovy bajt po kadem nazvu souboru misto obvykleho  znaku  konce
              adku.   Tato  volba  zajisti  jednoznanost  vystupu i v pipad, e
              nazvy soubor obsahuji neobvykle znaky  jako  znaky  konce  adku.
              Tuto volbu lze pouit pro pikazy jako find -print0, perl -0, sort
              -z a xargs -0, ke zpracovani libovolnych jmen soubor  vetn  tch,
              ktere obsahuji znaky konce adku.

REGUL'ARN'I V'YRAZY

       Regularni  vyraz  je vzor, ktery popisuje mnoinu etzc. Regularni vyrazy
       se pii (podobn jako aritmeticke vyrazy) pomoci rznych  operator,  ktere
       davaji dohromady meni vyrazy.

       Grep  zna  dv  rzne  verze  syntaxe  pro regularni vyrazy: "zakladni" a
       "roziene." Pro GNU grep neni v tchto dvou verzich adny rozdil co se tye
       funknosti.  V  jinych  implementacich  jsou  zakladni  regularni vyrazy
       slabi. Nasledujici popis plati pro roziene  regularni  vyrazy;  rozdily
       pro zakladni regularni vyrazy jsou uvedeny na konci.

       Zakladnim  stavebnim  kamenem  jsou  regularni vyrazy, ktere odpovidaji
       jedinemu znaku. Vtina znak, vetn vech pismen a islic, jsou samy  o  sob
       regularnimi  vyrazy, ktere se shoduji samy se sebou. Kterykoli metaznak
       se zvlatnim vyznamem me byt uveden ve svem pvodnim vyznamu  tak,  e  se
       ped nj napie zptne lomitko.

       Seznam  znak v [ a ] odpovida jakemukoli jednotlivemu znaku ze seznamu;
       kdy je prvnim znakem seznamu stika ^, potom seznam odpovida  jakemukoli
       znaku  ktery  v  seznamu  nen'i.   Napiklad regularni vyraz [0123456789]
       odpovida jedne libovolne islici.

       Rozsah znak lze  specifikovat  prvnim  a  poslednim  znakem,  oddlenymi
       pomlkou.  Odpovida  jednomu  znaku,  ktery je mezi uvedenymi dvma znaky
       vetn, za pouiti azeni a znakove sady podle locale.   Nap.  ve  vychozim
       locale  C  je  [a-d]  ekvivalentni  zapisu [abcd].  V mnoha locale jsou
       znaky tidny slovnikov a typicky v nich [a-d] neni ekvivalentni  [abcd];
       me  byt  nap.  ekvivalentni [aBbCcDd].  Pro pouiti tradini interpretace
       tchto vyraz je mone pouit C locale nastavenim promnne  prostedi  LC_ALL
       na hodnotu C.

       Jsou  take  pednastaveny  nktere  skupiny  znak:  [:alnum:], [:alpha:],
       [:cntrl:],  [:digit:],  [:graph:],  [:lower:],  [:print:],   [:punct:],
       [:space:],  [:upper:]  a  [:xdigit:]  jsou  postupn  pismena  a islice,
       pismena,  kontrolni  znaky,  islice,  obrazkove  znaky,  mala  pismena,
       tisknutelne znaky, interpunkni znamenka, mezery, velka pismena a islice
       estnactkove soustavy.  Napiklad [[:alnum:]] je stejne jako [0-9A-Za-z],
       a  na  to, e druhy vzor zavisi na C locale kodovani znak ASCII, zatimco
       prvni je nezavisly na locale i znakove sad (zavorky  v  nazvech  skupin
       jsou  souasti jejich symbolickych jmen a musi byt uvedene uvnit zavorek
       uzavirajicich seznam).  Vtina metaznak ztraci v seznamech  svj  zvlatni
       vyznam.  K  pidani  znaku ] do seznamu stai uvest ho jako prvni. Podobn
       znak ^ stai uvest na jinem ne prvnim mist. Konen znak - se  uvede  jako
       posledni.

       Teka  .  odpovida  jednomu libovolnemu znaku.  Znak \w je synonymem pro
       [[:alnum:]] a \W je synonymem pro [^[:alnum]].

       Stika ^ a znak dolaru $  jsou  metaznaky,  ktere  odpovidaji  prazdnemu
       etzci  na zaatku, resp. na konci adku.  Symboly \< a \> oznauji prazdne
       etzce na zaatku, resp. na konci slova.  Symbol  \b  odpovida  prazdnemu
       etzci  na  hranici  slova  a  \B odpovida prazdnemu etzci ktery nen'i na
       hranici slova.

       Regularni vyraz me mit za sebou jeden z opakovacich operator:
       ?      Pedchazejici poloka je volitelna a obsaena  nejvye  jednou  (tj.
              jednou nebo ani jednou).
       *      Pedchazejici  poloka  je  volitelna  a obsaena v libovolnem potu
              (tj. nula- nebo vicekrat).
       +      Pedchazejici poloka je obsaena jednou nebo vicekrat.
       {n}    Pedchazejici poloka je obsaena prav n krat.
       {n,}   Pedchazejici poloka je obsaena n nebo vicekrat.
       {n,m}  Pedchazejici poloka je obsaena alespo n krat, ale ne vice  ne  m
              krat.

       Dva  regularni  vyrazy  se  daji  pimo spojit; vysledny regularni vyraz
       odpovida  libovolnemu  etzci  vzniklemu  spojenim  dvou  jinych,  ktere
       odpovidaji pvodnim dvma regularnim vyrazm.

       Dva  regularni vyrazy lze sloit pevnym operatorem |; vysledny regularni
       vyraz odpovida etzci,  ktery  se  shoduje  s  kterymkoliv  z  uvedenych
       regularnich vyraz.

       Opakovani  ma pednost ped spojenim, ktere ma zase pednost ped stidanim.
       Cely podvyraz stai uzavit do zavorek aby se tato pednost zruila.

       Zptny odkaz \n, kde n je islice, odpovida podetzci,  ktery  byl  pedtim
       porovnavan  a  vyhodnocen  jako  shodny  s  n-tym  podvyrazem  oddlenym
       zavorkami od zbytku regularniho vyrazu.

       V zakladnich regularnich vyrazech ztraceji metaznaky ?, +, {, |, (, a )
       sve  zvlatni vyznamy; misto nich se daji pouit verze se zptnym lomitkem
       \?, \+, \{, \|, \(, a \).

       Tradini egrep nepodporoval metaznak { a nktere implementace egrep misto
       toho  podporovaly  \{.   Penositelne skripty by tedy nemly { ve vzorech
       pro egrep pouivat a misto toho k porovnani se znakem { pouivat seznam s
       jedinym znakem [{].

       GNU  egrep se snai tradini zpsob pouiti podporovat tak, e { nebere jako
       metaznak, pokud by ml byt zaatkem chybne specifikace rozsahu.  Napiklad
       pikaz  egrep  '{1'  hleda  dvouznakovy  etzec {1 misto toho, aby hlasil
       chybu syntaxe v regularnim vyrazu.  POSIX.2 dovoluje toto chovani  jako
       rozieni, ale penositelne skripty by na nj nemly spolehat.

PROMNN'E PROSTED'I

       Hovani grepu je ovlivnno nasledujicimi promnnymi prostedi:

       Locale  LC_foo je ureno prozkoumanim promnnych prostedi LC_ALL, LC_foo,
       LANG, v uvedenem poadi.  Prvni z nich, ktera je nastavena, uri  locale.
       Napiklad  pokud  neni nastavena LC_ALL, ale LC_MESSAGES je nastavena na
       pt_BR, je pro LC_MESSAGES  locale  pouita  brazilska  portugaltina.   C
       locale je pouito pouze tehdy, kdy neni nastavena adna z tchto promnnych
       prostedi nebo pokud neni nainstalovan katalog  locale  nebo  pokud  byl
       grep zkompilovan bez podpory narodnich jazyk (NLS).

       GREP_OPTIONS
              Tato  promnna nastavuje vychozi volby, ktere se pidaji na zaatek
              dalich  dodatenych  voleb.  Napiklad  kdyby  GREP_OPTIONS   bylo
              '--binary-files=without-match  --directories=skip',  grep  by se
              choval,  jako   kdyby   volby   --binary-files=without-match   a
              --directories=skip   byly   uvedene   ped  ostatnimi  dodatenymi
              volbami.   Nastaveni  voleb  jsou  oddlena  bilymi  znaky  (nap.
              mezerami  nebo  tabulatory).  Zptne lomitko escapuje znaky, take
              jej lze  pouit  pro  volbu  obsahujici  bile  znaky  nebo  zptna
              lomitka.

       GREP_COLOR
              Uruje znaku pro zvyrazovani.

       LC_ALL, LC_COLLATE, LANG
              Tyto  promnne  nastavuji  locale  LC_COLLATE,  ktere uruje azeni
              pouivane pi interpretaci vyraz s rozsahy jako [a-z].

       LC_ALL, LC_CTYPE, LANG
              Tyto promnne nastavuji locale LC_CTYPE, ktere uruje  typy  znak,
              nap. ktere znaky jsou bile znaky.

       LC_ALL, LC_MESSAGES, LANG
              Tyto  promnne nastavuji locale LC_MESSAGES urujici jazyk, kterym
              bude grep tisknout hlaeni.  Vychozi C  locale  pouiva  americkou
              anglitinu.

       POSIXLY_CORRECT
              Pokud  je  nastaveno, grep se chova podle poadavk POSIX.2; jinak
              se grep chova vice jako ostatni programy GNU.  POSIX.2  vyaduje,
              aby  volby  nasledujici  za  jmeny  soubor byly brany u jen jako
              jmena soubor; normaln se takove volby pesunou na zaatek  seznamu
              parametr  a  berou  se  jako  volby. POSIX.2 dale vyaduje aby se
              nezname volby pokladaly za "ilegalni",  ale  protoe  nejsou  tak
              upln   protizakonne,   normaln   se   prohlasi  za  "invalidni".
              POSIXLY_CORRECT take  rui  _N_GNU_nonoption_argv_flags_  popsane
              dale.

       _N_GNU_nonoption_argv_flags_
              (Zde N je islo procesu grep).  Jestlie hodnota i-teho znaku teto
              promnne je 1, neber i-ty parametr grep jako volbu,  i  kdyby  to
              vypadalo,  e to volba je. Shell me dat tuto promnnou do prostedi
              pro kady pikaz ktery spouti,  aby  uril,  ktere  parametry  jsou
              vysledkem  rozvinuti  jmen  soubor  "olikovymi"  znaky (* a ?) a
              nemaji byt  brany  jako  volby.  Toho  chovani  je  mone  jen  s
              knihovnou GNU C a jen kdy neni nastaveno POSIXLY_CORRECT.

N'AVRATOV'E HODNOTY

       Normaln  je vystupni hodnota 0, kdy jsou nalezeny shody nebo 1 kdy adne
       nalezeny nejsou. Vystupni hodnota je 2, pokud dolo k chyb,  ledae  byla
       pouita volba -q nebo --quiet nebo --silent a byla nalezena odpovidajici
       adka.

CHYBY

       Hlaeni o chybach posilejte na bug-grep@gnu.org (anglicky).

       Velke poty opakovani v konstrukci {m,n} mou vest k tomu, e grep  pouije
       dost   pamti.   Navic  nktere  jine  neobvykle  regularni  vyrazy  maji
       exponencialni naroky na as a prostor a mohou zpsobit, e grep  spotebuje
       vechnu pam.

       Zptne  odkazy  jsou  velmi  pomale  a  doba  jejich  zpracovani  me rst
       exponencialn.