Provided by: manpages-es-extra_0.8a-17_all bug

NOMBRE

       grep, egrep, fgrep - muestran líneas que concuerdan con un patrón

SINOPSIS

       grep  [-AB]  núm]  [-CEFGVbchiLlnqsvwxyUu] [[-e ] patrón | -f fichero] [--extended-regexp]
       [--fixed-strings]  [--basic-regexp]  [--regexp=PATRÓN]  [--file=FICHERO]   [--ignore-case]
       [--word-regexp]    [--line-regexp]    [--line-regexp]   [--no-messages]   [--invert-match]
       [--version] [--help]  [--byte-offset]  [--line-number]  [--with-filename]  [--no-filename]
       [--quiet]  [--silent]  [--files-without-match] [--files-with-matcces] [--count] [--before-
       context=NUM]   [--after-context=NUM]    [--context]    [--binary]    [--unix-byte-offsets]
       ficheros...

DESCRIPCIÓN

       Grep  busca  en la entrada, bien en la que se le especifica con nombres de ficheros o bien
       en la entrada estándar si no se le dan dichos nombres o si uno de  éstos  consiste  en  -,
       líneas  que  concuerden  o  coincidan  con  el patrón dado.  Si no se dice otra cosa, grep
       muestra las líneas que concuerden.

       Hay tres grandes variantes de grep, controladas por las siguientes opciones:
       -G, --basic-regexp
              Interpreta patrón como una expresión regular básica (vea más  abajo).  Éste  es  el
              comportamiento predeterminado.
       -E, --extended-regexp
              Interpreta patrón coma una expresión regular extendida (vea más adelante).
       -F, --fixed-strings
              Interpreta  patrón  como  una  lista  de cadenas de caracteres fijas, separadas por
              saltos de línea; se busca la concordancia de una cualquiera de ellas.
       Además, están disponibles dos programas que son variantes de éste: egrep y  fgrep.   egrep
       es  similar  (pero no idéntico) a grep -E, y es compatible con el egrep histórico de Unix.
       fgrep es lo mismo que grep -F.

       Todas las variantes de grep entienden las siguientes opciones:
       -núm   Las líneas concordantes  se  mostrarán  acompañadas  de  núm  líneas  anteriores  y
              posteriores. Sin embargo, grep nunca mostrará cualquier línea dada más de una vez.
       -A  núm , --after-context=NÚM
              Muestra núm líneas de contexto después de las que concuerden con el patrón.
       -B  núm , --before-context=NÚM
              Muestra núm líneas de contexto antes de las que concuerden con el patrón.
       -C, --context
              Equivalente a -2.
       -V, --version
              Muestra  el número de versión de grep en la salida estándar de errores. Este número
              de versión debería incluirse en todos los informes de fallos (vea más abajo).
       -b, --byte-offset
              Muestra el desplazamiento en bytes desde el principio del fichero de entrada  antes
              de cada línea de salida.
       -c, --count
              Suprime  la  salida  normal; en su lugar muestra el número de líneas que concuerdan
              con el patrón para cada fichero de entrada.  Con la opción -v, --invert-match  (vea
              más abajo), muestra el número de líneas que no concuerden.
       -e patrón,--regexp=PATRÓN
              Emplea patrón como el patrón; útil para proteger patrones que comiencen con -.
       -f fichero,--file=FICHERO
              Obtiene el patrón de fichero.
       -h, --no-filename
              Suprime la impresión de los nombres de ficheros antes de las líneas concordantes en
              la salida, cuando se busca en varios ficheros.
       -i, --ignore-case
              No hace caso de si las letras son mayúsculas o minúsculas ni en el patrón ni en los
              ficheros de entrada.
       -L, --files-without-match
              Suprime  la salida normal; en su lugar muestra el nombre de cada fichero de entrada
              donde no se encuentre ninguna concordancia y por lo tanto de cada  fichero  que  no
              produciría  ninguna  salida.  La  búsqueda  se  detendrá  al  llegar  a  la primera
              concordancia.
       -l, --files-with-matches
              Suprime la salida normal; en su lugar muestra el nombre de cada fichero de  entrada
              que produciría alguna salida. La búsqueda se detendrá en la primera concordancia.
       -n, --line-number
              Prefija  cada  línea  de  salida  con  el  número de línea de su fichero de entrada
              correspondiente.
       -q, --quiet
              Silencioso;  suprime  la  salida  normal.  La  búsqueda  finaliza  en  la   primera
              concordancia.
       -s, --silent
              Suprime los mensajes de error sobre ficheros que no existen o no se pueden leer.
       -v, --invert-match
              Invierte  el  sentido  de la concordancia, para seleccionar las líneas donde no las
              hay.
       -w, --word-regexp
              Selecciona  solamente  aquellas  líneas  que  contienen  concordancias  que  forman
              palabras  completas.  La  comprobación  consiste  en  que  la  cadena de caracteres
              concordante debe estar al principio de la línea o precedida por un carácter que  no
              forme  parte  de una palabra. De forma similar, debe estar o al final de la línea o
              ser seguida por un carácter no constituyente de  palabra.  Los  caracteres  que  se
              consideran como parte de palabras son letras, dígitos y el subrayado.
       -x, --line-regexp
              Selecciona solamente aquellas concordancias que constan de toda la línea.
       -y     Sinónimo obsoleto de -i.
       -U, --binary
              Trata  el(los)  fichero(s)  como binario(s). De forma predeterminada, bajo MS-DOS y
              MS-Windows, grep intenta adivinar el tipo del fichero mirando los contenidos de los
              primeros  32  kB leídos de él. Si grep decide que el fichero es de texto, quita los
              caracteres CR (retorno de carro) de los contenidos originales del fichero (para que
              las  expresiones  regulares  con  ^ y $ funcionen correctamente). Al especificar -U
              deshabilitamos este intento de adivinación del tipo del fichero, haciendo que todos
              se  lean  y  pasen  al mecanismo de concordancia tal cuales; si el fichero lo es de
              texto y tiene al final de cada línea el par de  caracteres  CR/LF,  esto  hará  que
              algunas  expresiones  regulares  fallen. Esta opción sólo tiene sentido en MS-DOS y
              MS-Windows.
       -u, --unix-byte-offsets
              Informa de desplazamientos de bytes al estilo de Unix. Esta opción  hace  que  grep
              muestre los desplazamientos de bytes como si el fichero fuera de texto al estilo de
              Unix; o sea, sin  los  caracteres  CR  al  final  de  cada  línea.  Esto  producirá
              resultados  idénticos  a  ejecutar  grep  en  un sistema Unix. Esta opción no tiene
              efecto a menos que se dé también la opción -b; sólo tiene sentido en MS-DOS  y  MS-
              Windows.

EXPRESIONES REGULARES

       Una  expresión regular es un patrón que describe un conjunto de cadenas de caracteres. Las
       expresiones regulares se construyen  de  forma  análoga  a  las  expresiones  aritméticas,
       combinando  expresiones  más  pequeñas mediante ciertos operadores para formar expresiones
       complejas.

       El programa grep entiende dos  versiones  diferentes  de  sintaxis  para  las  expresiones
       regulares:  la  ``básica''  y  la  ``extendida''.  En  la  versión  de grep de GNU, no hay
       diferencia en usar  una  u  otra  en  cuanto  a  la  funcionalidad  disponible.  En  otras
       implementaciones,  las  expresiones  regulares  básicas  son  menos potentes. La siguiente
       descripción se aplica a expresiones regulares extendidas; las diferencias con las  básicas
       se resumen a continuación.

       Los bloques de construcción fundamentales son las expresiones regulares que concuerdan con
       un solo carácter. La mayoría de los caracteres, incluyendo todas las letras y dígitos, son
       expresiones  regulares  que  concuerdan  consigo  mismos.  Cualquier  meta-carácter con un
       significado especial debe ser protegido precediéndolo con una barra inclinada inversa.

       Una lista de caracteres rodeados por [ y ] concuerda con cualquier carácter de esa  lista;
       si  el  primer  carácter  de  la  lista  es el acento circunflejo ^ entonces concuerda con
       cualquier carácter de fuera de la lista.  Por ejemplo, la expresión  regular  [0123456789]
       concuerda con cualquier carácter dígito. Se puede especificar un rango de caracteres ASCII
       dando el primero y el último, separados por  un  guión.   Finalmente,  están  predefinidas
       ciertas  clases  de  caracteres,  con  un  nombre  para  cada una. Estos nombres son auto-
       explicativos, y son [:alnum:],  [:alpha:],  [:cntrl:],  [:digit:],  [:graph:],  [:lower:],
       [:print:],  [:punct:],  [:space:],  [:upper:],  y  [:xdigit:].   Por  ejemplo, [[:alnum:]]
       significa  (en  inglés)  [0-9A-Za-z],  salvo  que  la  última  forma  depende  de  que  la
       codificación  de  caracteres  siga el estándar ISO-646 o ASCII, mientras que la primera es
       transportable.  (Observe que los corchetes en estos nombres de clases  son  parte  de  los
       nombres simbólicos, y deben incluirse además de los corchetes que delimitan la lista entre
       corchetes.) La mayor parte de los meta-caracteres pierden su significado  especial  dentro
       de  estas  listas.  Para  incluir  un  ] literal, póngalo el primero de la lista. De forma
       similar, para incluir  un  ^  literal,  póngalo  en  cualquier  sitio  menos  el  primero.
       Finalmente, para incluir un - literal, póngalo el último.

       El  punto  .   concuerda  con  cualquier  carácter  solo.  El símbolo \w es un sinónimo de
       [[:alnum:]] y \W lo es de [^[:alnum]].

       El acento circunflejo ^ y el signo  del  dólar  (y  del  escudo  portugués)  $  son  meta-
       caracteres  que  respectivamente  concuerdan con la cadena vacía al comienzo y al final de
       una línea.  Los símbolos \< y  \>  respectivamente  concuerdan  con  la  cadena  vacía  al
       principio y al final de una palabra.  El símbolo \b concuerda con la cadena vacía al borde
       de una palabra, y \B concuerda con la cadena vacía supuesto que no esté en el  extremo  de
       una palabra.

       Una  expresión  regular  que  concuerde  con un solo carácter puede ser seguida por uno de
       estos varios operadores de repetición:
       ?      El elemento precedente es opcional y concuerda como mucho una vez.
       *      El elemento precedente concordará cero o más veces.
       +      El elemento precedente concordará una o más veces.
       {n}    El elemento precedente concuerda exactamente n veces.
       {n,}   El elemento precedente concuerda n o más veces.
       {,m}   El elemento precedente es opcional y concuerda como mucho m veces.
       {n,m}  El elemento precedente concuerda como poco n veces, pero no más de m veces.

       Dos expresiones regulares pueden concatenarse; la expresión regular  resultante  concuerda
       con  cualquier  cadena  formada mediante la concatenación de dos subcadenas que concuerdan
       respectivamente con las subexpresiones concatenadas.

       Dos expresiones regulares pueden juntarse mediante el  operador  infijo  |;  la  expresión
       regular  resultante  concuerda  con  cualquier  cadena que concuerde con cualquiera de las
       subexpresiones.

       La repetición tiene precedencia sobre la concatenación, la cual a su vez tiene precedencia
       sobre  la  alternancia.  Una subexpresión entera puede ser encerrada entre paréntesis para
       subvertir estas reglas de precedencia.

       La retrorreferencia \n, donde n es un  dígito  simple,  concuerda  con  la  subcadena  que
       previamente concordó con la n-sima subexpresión entre paréntesis de la expresión regular.

       En  las  expresiones  regulares básicas, los meta-caracteres ?, +, {, |, (, y ) pierden su
       significado especial; en su lugar  emplee  las  versiones  protegidas  mediante  la  barra
       inversa \?, \+, \{, \|, \(, y \).

       En egrep, el meta-carácter { pierde su significado especial; en su lugar emplee \{.

DIAGNÓSTICOS

       Normalmente,  el  status  de  salida  es  0  si  se encuentran concordancias, y 1 si no se
       encuentran. (La opción -v invierte el sentido del status de salida.)  El status de  salida
       es  2  si  había  errores  de  sintaxis  en  el  patrón,  si  los ficheros de entrada eran
       inaccesibles, o en caso de otros errores del sistema.

FALLOS

       Envíe  informes  sobre  fallos  por   correo   electrónico   a   la   dirección   bug-gnu-
       utils@prep.ai.mit.edu.   Asegúrese de incluir la palabra ``grep'' en algún sitio del campo
       ``Asunto:'' (``Subject:'').

       Números de repetición grandes en la  construcción  {m,n}  pueden  hacer  que  grep  emplee
       grandes  cantidades  de  memoria.   En  adición a esto, ciertas otras obscuras expresiones
       regulares requieren tiempo y espacio exponenciales, y pueden hacer que grep se  quede  sin
       memoria.

       Las retrorreferencias son muy lentas, y pueden requerir un tiempo exponencial.