GREP(1) Ordenes de usuario GREP(1)
NOMBRE
grep - muestra lineas que concuerdan con un patron
SINOPSIS
grep [OPCION...] PATRONES [ARCHIVO...]
grep [OPCION...] -e PATRONES ... [ARCHIVO...]
grep [OPCION...] -f ARCHIVO_PATRON ... [ARCHIVO...]
DESCRIPCION
grep busca PATRONES en cada ARCHIVO. PATRONES consistira en uno o mas
patrones separados entre si por un salto de linea; grep mostrara cada
linea donde encuentre una concordancia con dicho patron. En general,
deben entrecomillarse los patrones si se ejecut grep dentro de otra
orden de la shell.
Si definimos ARCHIVO como '-', se considerara la entrada estandar. Si
nose define ningun valor para ARCHIVO, se hara una busqueda recursiva
del directorio actual y no recursiva de la entrada estandar.
OPCIONES
Informacion generica de la aplicacion
--help Muestra una breve instruccion de uso y finaliza.
-V, --version
Muestra la version de grep y termina.
Sintaxis del patron
-E, --extended-regexp
Interpreta PATRONES como una expresion regular extendida (vea
mas adelante).
-F, --fixed-strings
Interpreta PATRONES como una cadena de texto, no como
expresiones regulares.
-G, --basic-regexp
Interpreta PATRONES como una expresion regular basica (vea mas
abajo). Este es el comportamiento predeterminado.
-P, --perl-regexp
Interpreta PATRONES como un expresion regular de Perl (PCRE).
Esta opcion aun es experimental si se combina con -z (--vacio),
grep -P puede emitir avisos acerca de funciones no
implementadas.
Gestion de las concordancias
-e PATRONES, --regexp=PATRONES
Emplea PATRONES como patrones. Si se usa varias veces o se
combina con la opcion -f (--file) la busqueda se realizara con
todos los patrones dado. Esta opcion es util para proteger un
patron que comience por '-'.
-f ARCHIVO, --file=ARCHIVO
Obtiene el patron de ARCHIVO, uno de cada linea. Si se emplea
esta opcion varias veces o se combina con -e (--regexp) realiza
la busqueda con todos los patrones que se indiquen. Un archivo
vacio contiene cero patrones y no concordara con nada. Si
ARCHIVO es -, tomara los patrones desde la entrada estandar.
-i, --ignore-case
No distingue entre mayusculas y minusculas tanto en los patrones
como en los datos de entrada, asi que los caracteres que solo
difieran en este aspecto resultaran en una coincidencia.
--no-ignore-case
Distingue entre mayusculas y minusculas tanto en los patrones
como en los datos de entrada (comportamiento por defecto). Esta
opcion es util en el caso de emplearse en scripts de shell donde
se haya definido previamente la opcion -i ya que ambas opciones
se anulan entre si.
-v, --invert-match
Invierte el sentido de la concordancia, seleccionando las lineas
que no concuerden.
-w, --word-regexp
Selecciona solamente aquellas lineas que contienen concordancias
que forman palabras completas. La comprobacion consiste en que
la cadena de caracteres concordante debe estar al principio de
la linea o precedida por un caracter que no forme parte de una
palabra. De forma similar, debe estar o al final de la linea o
ser seguida por un caracter no constituyente de palabra. Los
caracteres que se consideran como parte de palabras son letras,
digitos y el subrayado. No tiene efecto si tambien de define la
opcion -x.
-x, --line-regexp
Selecciona unicamente las linea que concuerden completa y
exactamente en su totalidad con el patron. Equivaldria, en el
caso de una expresion regular, a definir el patron entre
parentesis comenzando con ^ y finalizando con $.
Gestion general de la salida
-c, --count
Suprime la salida normal; en su lugar muestra el numero de
lineas que concuerdan con el patron para cada archivo de
entrada. Con la opcion -v, --invert-match, contabiliza el
numero de lineas que no concuerdan.
--color[=CUANDO], --colour[=CUANDO]
Rodea las cadenas concordantes (que no esten en blanco), lineas
concordantes, nombres de archivo, numeros de linea, bytes de
compensacion y separadores (para los campos y grupos de lineas
contextuales) con secuencias de escape para mostrarlas en
distintos colores a traves del terminal. Dichos colores se
definen a traves de la variable de entorno GREP_COLORS. Los
colores se definen mediante las variables de entorno . CUANDO
puede tener tres valores diferentes: never (nunca), always
(siempre) o auto.
-L, --files-without-match
Suprime la salida normal; en su lugar muestra el nombre de cada
archivo de entrada donde no se encuentre ninguna concordancia y
por lo tanto de cada fichero que no produciria ninguna salida.
-l, --files-with-matches
Suprime la salida normal; en su lugar muestra el nombre de cada
fichero de entrada que produciria alguna salida. La busqueda de
cada entrada se detendra en la primera concordancia.
-m NUM, --max-count=NUM
Deja de leer un archivo al alcanzar la cantidad de NUM lineas
concordantes. Si NUM es cero, grep se detiene de inmediato sin
leer ninguna entrada. Si NUM es -1, se considera como infinito y
grep nunca se detiene; este es el comportamiento por defecto. Si
la entrada es un archivo corriente y la salida son las NUM
lineas concordantes, grep hara que el archivo de entrada quede
posicionado justo despues de la ultima linea concordante sin
importar la existencia de alguna linea contextual posterior.
Asi, un proceso posterior podra continuar con la busqueda.
Cuando grep se detiene despues de encontrar NUM lineas
concordantes, mostrara sus lineas contextuales. Si se usa la
opcion -c o --count, nunca se mostrara un recuento superior a
NUM. Con la opcion -v o --invert-match, la ejecucion de grep se
detendra una vez mostradas NUM lineas no concordantes.
-o, --only-matching
Muestra solo la parte coincidente con el patron de una linea
concordante, siempre que no sea una cadena vacia y poniendo cada
parte en una linea diferente.
-q, --quiet, --silent
Minima salida. No muestra nada en la salida estandar. Termina
con estado cero si encuentra alguna concordancia aunque detecte
algun error. Consulte tambien la opcion -s o --no-messages.
-s, --no-messages
Suprime los mensajes de error sobre archivos que no existen o no
se pueden leer.
Muestra un prefijo de control en cada linea
-b, --byte-offset
Muestra el desplazamiento de bytes, comenzando en cero, dentro
del archivo de entrada antes de cada linea mostrada. Si se
define -o (-only-matching), muestra el desplazamiento de la
parte concordante.
-H, --with-filename
Muestra el nombre del archivo donde se produjo la concordancia.
Esto se hara por defecto cuando se busque en mas de un archivo.
Es una extension de GNU.
-h, --no-filename
No muestra los nombres de archivo antes de cada linea. Es el
comportamiento por defecto cuando se realiza la busqueda en un
solo archivo o en la entrada estandar.
--label=ETIQUETA
Muestra la entrada provienente de la entrada estandar como
entrada proveniente del archivo LABEL. Esto puede ser util para
las ordenes que transforman el contenido de un archivo antes de
realizar la busqueda. Por ejemplo: gzip -cd foo.gz | grep
--label=foo -H 'algun patron'. Consulte tambien la opcion -H.
-n, --line-number
Antepone a cada linea mostrada el numero de linea de su archivo
de entrada correspondiente comenzando por el 1.
-T, --initial-tab
Se asegura que el primer caracter de la linea actual este en una
tabulacion, de modo que la alineacion de las tabulaciones
parezca normal. Esto es util con las opciones que anteponen su
salida al contenido real: -H, -n y -b. Para incrementar la
probabilidad de que todas las lineas de un mismo archivo
comiencen en la misma columna, tambien hace que el numero de
linea y el desplazamiento de bytes (si existe) se impriman en un
ancho de campo minimo.
-Z, --null
Muestra un byte cero (el caracter ASCII NUL) en lugar del
caracter que habitualmente seguiria al nombre de un archivo. Por
ejemplo: grep -lZ genera un byte cero despues de cada nombre de
archivo en lugar del salto de linea habitual. Esta opcion hace
que la salida no sea ambigua, incluso con nombres de archivo que
contengan caracteres poco usuales como saltos de linea. Esta
opcion se puede usar con ordenes como find -print0, perl -0,
sort -z y xargs -0 para procesar nombres de archivos
arbitrarios, incluso aquellos que contienen saltos de linea en
su nombre.
Gestion de Lineas Contextuales
-A NUM, --after-context=NUM
Imprime NUM lineas de contexto posterior despues de las lineas
concordantes. Coloca una linea que contiene un separador de
grupo (--) entre grupos contiguos de coincordancias. Con la
opcion -o o --only-matching, se emitira un mensaje de
advertencia y no tendra ningun efecto.
-B NUM, --before-context=NUM
Imprime NUM cantidad de lineas de contexto respecto de la
concordante. Anade un separador (--) entre grupos de
concordancias. Si se emplea con la opcion -o o --only-matching,
no tendra ningun efecto y se emitira un aviso.
-C NUM, -NUM, --context=NUM
Muestra NUM lineas contextuales. Inserta una linea con un
separador (--) entre grupos contiguos de concordancias. Si se
usa la opcion -o o --only-matching, se emite un mensaje de
advertencia y no tendra ningun efecto.
--group-separator=SEP
Cuando se usen las opciones -A, -B o -C, emplea SEP en lugar de
-- entre los distintos grupos de lineas.
--no-group-separator
Cuando se usen las opciones -A, -B o -C, no me mostrara ningun
separador entre lineas.
Seleccion de archivos y directorios
-a, --text
Procesa un archivo binario como si se tratase de texto. Equivale
a la opcion --binary-files=text.
--binary-files=TIPO
Si los datos o metadatos de un archivo indican que su contenido
es binario, asume que dicho archivo es del tipo TIPO. Los bytes
que no codifican texto, indican que el contenido es binario;
estos podran ser bytes incorrectamente codificados para la
localizacion en uso o bytes nulos si no se indico la opcion -z.
Por defecto, TIPO se considera binary, con lo cual grep elimina
cualquier salida si se encuentra con datos binarios o datos
incorrectamente codificados. Cada vez que se elimina algo en la
salida, grep mostrara un mensaje en la salida de error estandar
informando de la concordancia con un archivo binario.
Si TIPO es without-match, grep asumira que no hay concordancia
alguna en el resto del archivo si se encuentra contenido nulo
binarios. Esto equivale a la opcion -I.
Si TIPO es texto, grep procesara un archivo binario como si se
tratase de texto. Equivale a la opcion -a.
Cuando el tipo es binario, grep puede tratar los bytes
no-textuales como terminadores de linea incluso sin la opcion
-z. Esto significa que elegir binario frente a texto puede
afectar si un patron coincide con un archivo. Por ejemplo,
cuando tipo es binario, el patron q$ podria coincidir con q
seguido inmediatamente de un byte nulo, aunque esto no concorde
cuando el tipo es texto. Por el contrario, cuando el tipo es
binario, el patron . (punto) puede no coincidir con un byte
nulo.
AVISO: La opcion -a puede mostrar contenido binario sin sentido
lo que puede tener efectos adversos si dicho contenido se
muestra a traves de un terminal y este interpreta que son
ordenes. Por otra parte, esta opcion es util a la hora de leer
archivos cuya codificacion se desconoce (tambien definir
LC_ALL='C') porque asi se pueden encontrar mas concordancias
aunque no sea seguro mostrarlas directamente.
-D ACCION, --devices=ACCION
emplea ACCION para procesar un archivo de entrada si es un
dispositivo, un FIFO o un socket. Por defecto, ACCION sera read
por lo que estos dispositivos, seran leido como un archivo
corriente. Si ACCION es skip, los dispositivos seran descartados
sin ningun aviso.
-d ACCION, --directories=ACCION
Emplea ACCION para procesar el archivo de entrada si este es un
directorio. Por defecto, esta ACCION es read (leer), esto es que
leera directorios tal como si fuesen archivos. Si ACCION es
skip, se saltara los directorios sin emitir ningun mensaje. Por
ultimo, si ACCION es recurse, leera de forma recusiva todos los
archivos que se encuentren dentro de cada directorio siguiendo
los enlaces simbolicos solo si se indican en la linea de
ordenes. Esto equivaldria a definir la opcion -r.
--exclude=GLOB
Omite cualquier archivo de linea de ordenes con una extension
que coincida con el patron GLOB, utilizando la concordancia de
comodines; una extesnion de nombre es el nombre completo o una
parte final que comienza con un caracter que no es una barra
inmediatamente despues de una barra (/) en el nombre. Cuando
realice una busqueda recursiva, omita cualquier subarchivo cuyo
nombre base coincida con GLOB; el nombre base es la parte
despues de la ultima barra. Un patron puede usar *, ? y [...]
como comodines, y \ para citar un comodin o caracter de barra
invertida literalmente.
--exclude-from=ARCHIVO
Ignora archivos cuya base del nombre coincida con alguna de las
expresiones contenidas en ARCHIVO (empleando concordancias tal
como se describio en --exclude).
--exclude-dir=GLOB
Salta cualquier directorio cuyo sufijo concuerde con el patron
GLOB. Cuando se hace una busqueda recursiva, saltara cualquier
subdirectorio cuya base del nombre concuerde con GLOB. No tiene
en cuenta las barras al final de GLOB.
-I Procesa un archivo binario como si no contuviese ninguna
concordancia. Equivale a la opcion --binary-files=without-match.
--include=GLOB
Busque solo archivos cuyo nombre base coincida con GLOB (usando
la concordancia de comodines como se describe en --exclude). Si
se dan opciones contradictorias --include y --exclude,
prevalecera la ultima que coincida. Si ninguna opcion --include
o --exclude coincide, se incluye un archivo a menos que la
primera opcion sea --include.
-r, --recursive
Lee recursivamente todos los archivos dentro de cada directorio,
sigue enlaces simbolicos solo si estan en la linea de ordenes.
Observe que si no se indica ningun archivo, grep buscara en el
directorio actual. Equivale a la opcion -d recurse.
-R, --dereference-recursive
Lee recursivamente todos los archivos dentro de cada directorio.
Sigue todos los enlaces simbolicos a diferencia de -r.
Otras opciones
--line-buffered
Emplea el bufer de linea para la salida. Puede provocar un
descenso del rendimiento.
-U, --binary
Trata el(los) fichero(s) como binario(s). De forma
predeterminada, en MS-DOS y MS-Windows, grep intenta adivinar el
tipo de archivo tal como se describe para la opcion
--binary-files. 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 adivinacion 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 linea el
par de caracteres CR/LF, esto hara que algunas expresiones
regulares fallen. Esta opcion solo tiene sentido en MS-DOS y
MS-Windows.
-z, --null-data
Considera los datos de entrada y salida como secuencias de
lineas, cada una terminada con un byte cero (el caracter ASCII
NUL) en lugar de una nueva linea. Al igual que la opcion -Z o
--null, esta opcion se puede usar con ordenes como sort -z para
procesar nombres de archivos arbitrarios.
EXPRESIONES REGULARES
Una expresion regular es un patron que describe un conjunto de cadenas
de caracteres. Las expresiones regulares se construyen de forma analoga
a las expresiones aritmeticas, combinando expresiones mas pequenas
mediante ciertos operadores para formar expresiones complejas.
grep interpreta tres versiones diferentes de la sintaxis de expresiones
regulares: "basico" (BRE), "extendido" (ERE) y "perl" (PCRE). En GNU
grep, las expresiones regulares basicas y extendidas son simplemente
notaciones diferentes parala misma funcionalidad de concordancia de
patrones. En otras implementaciones, las basicassuelen ser menos
potentes que las extendidas aunque a veces ocurre l contrario. Se
aplica la siguiente descripcion a expresiones regulares extendidas;
diferencias para expresiones regulares basicas se resumen a
continuacion. Las expresiones regulares de Perl tienen funcionalidades
diferente, y estan documentadas en pcre2syntax(3) y pcre2pattern(3),
pero solo funcionaran si esta habilitada la compatibilidad con PCRE.
Los bloques de construccion fundamentales son las expresiones regulares
que concuerdan con un solo caracter. La mayoria de los caracteres,
incluyendo todas las letras y digitos, son expresiones regulares que
concuerdan consigo mismos. Cualquier meta-caracter con un significado
especial debe ser protegido precediendolo con una barra inclinada
inversa.
El punto . concuerda con un unico caracter, cualquiera que sea. No esta
definido el comportamiento si se topa con un error de codificacion.
Grupos de caracters y Expresiones entre Corchetes
Una expresion entre corchetes es una lista de caracteres encerrados
entre [ y ]. Coincide con cualquier caracter de esa lista. Si el primer
caracter de la lista es el simbolo de intercalacion ^, entonces
coincide con cualquier caracter que NO este en la lista; no se
especifica si coincide con un error de codificacion. Por ejemplo, la
expresion regular [0123456789] coincidira con cualquier digito.
En el interior de una expresion entre corchetes, una expresion de
intervalo consta de dos caracteres separados por un guion. Coincide con
cualquier caracter individual que se clasifique entre los dos
caracteres, inclusive utilizando la secuencia de clasificacion y el
conjunto de caracteres de la configuracion regional. Por ejemplo, en la
configuracion regional predeterminada de C, [a-d] es equivalente a
[abcd]. Muchas configuraciones regionales clasifican los caracteres del
mismo modo que se haria en un diccionario y, en estas configuraciones
regionales, [a-d] normalmente no es equivalente a [abcd]; podria ser
equivalente a [aBbCcDd], por ejemplo. Para obtener la interpretacion
tradicional de las expresiones entre corchetes, puede utilizar la
configuracion regional C estableciendo la variable de entorno LC_ALL en
el valor C.
Ciertas clases de caracteres estan predefinidas como de expresiones
entre corchetes, como se muestra a continuacion. Sus nombres se
explican por si mismos y son [:alnum:], [:alpha:],[:blank:], [:cntrl:],
[:digit:], [:graph:], [:lower:], [:print:], [:punct:], [:space:],
[:upper:] y [:xdigit:]. Por ejemplo, [[:alnum:]] hace referencia a los
numeros y letras en la configuracion regional actual. En la
configuracion regional C y la codificacion del juego de caracteres
ASCII, esto es lo mismo que [0-9A-Za-z]. Tenga en cuenta que los
corchetes en estos nombres de clase son parte de los nombres simbolicos
y deben incluirse ademas de los corchetes que delimitan la expresion
entre corchetes. La mayoria de los metacaracteres pierden su
significado especial dentro de las expresiones entre corchetes. Para
referirse a ], debera ponerse en el primer lugar de la lista. De manera
similar, para incluir un literal ^ coloquelo en cualquier lugar menos
en el primero. Para incluir -, coloquelo al final.
Anclado
El simbolo de intercalacion (caret en ingles) ^ y el dolar $ son
metacaracteres que concuerdan respectivamente con una cadena vacia al
inicio y al final de una linea.
La Barra Invertida y otras Expresiones Especiales
Los simbolos \< y \> concuerdan con una cadena vacia al inicio y al
fina de una palabra, respetivamente. El simbolo \b concuerda con una
cadena vacia en los extremos de una palabra y 0[u00E1] lo propio si
dicha cadena vacio NO esta en los extremos de una palabra. El simbolo
\w es sinomino de [_[:alnum:]] y \W lo es de [^_[:alnum:]].
Repeticion
Una expresion regular que concuerde con un solo caracter puede ser
seguida por uno de estos varios operadores de repeticion:
? El elemento precedente es opcional y concuerda como mucho una
vez.
* El elemento precedente concordara cero o mas veces.
+ El elemento precedente concordara una o mas veces.
{n} El elemento precedente concuerda exactamente n veces.
{n,} El elemento precedente concuerda n o mas veces.
{,m} El elemento precedente concuerda un maximo de m veces. Es una
extension de GNU.
{n,m} El elemento precedente concuerda como poco n veces, pero no mas
de m veces.
Concatenacion
Dos expresiones regulares pueden concatenarse; la expresion regular
resultante concuerda con cualquier cadena formada mediante la
concatenacion de dos subcadenas que concuerdan respectivamente con las
expresiones concatenadas.
Alternancia
Dos expresiones regulares pueden juntarse mediante el operador |; la
expresion regular resultante concuerda con cualquier cadena que
concuerde con cualquiera de las expresiones.
Precedencia
La repeticion tiene precedencia sobre la concatenacion, la cual a su
vez tiene precedencia sobre la alternancia. Una expresion entera puede
ser encerrada entre parentesis para subvertir estas reglas de
precedencia.
Retroreferencias y Subexpresiones
The back-reference \n , where n is a single digit, matches the
substring previously matched by the nth parenthesized subexpression of
the regular expression.
Expresiones Regulares Basicas y Ampliadas
En las expresiones regulares basicas, los metacaracteres ?, +, {, |, (,
y ) pierden su significado especial; en su lugar emplee las versiones
protegidas mediante la barra inversa \?, \+, \{, \|, \(, y \).
ESTADO DE SALIDA
El estado de salida suele ser 0 si se ha seleccinado alguna linea, 1 si
no se ha seleccionado ninguna y 2 si ha ocurrido algun error. Sin
embargo, si se indico la opcion -q o --quiet o --silent el estado de
salida sera cero aunque ocurriese algun error.
ENTORNO
El comportamiento de grep esta influido por las siguientes variables de
entorno.
La configuracion regional para la categoria LC_foo se establece en base
a las tres variables de entorno LC_ALL, LC_foo y LANG, en ese orden. La
primera de estas variables que este definida, marcara la configuracion
regional. Por ejemplo, si LC_ALL no esta definida, pero LC_MESSAGES si
lo esta en pt_BR, entonces se utiliza la configuracion regional
portuguesa brasilena para la categoria LC_MESSAGES. La configuracion
regional C se utilizara en el caso de que no este configurada ninguna
de estas variables de entorno, si el catalogo de configuracion regional
no esta instalado o si grep no se compilo con soporte de idioma
nacional (NLS). La orden locale -a enumera las configuraciones
regionales que estan disponibles en un determinado equipo.
GREP_COLORS
Define como se resaltara el resultado con la opcion --color. Su
valor es una lista de capacidades separadas entre si por dos
puntos que, por defecto, es
ms=01;31:mc=01;31:sl=:cx=:fn=35:ln=32:bn=32:se=36 con las
capacidades booleanas rv y ne omitidas (es decir, falsas). Las
capacidades admitidas son las siguientes.
sl= Subcadena SGR para lineas seleccionadas completas (es
decir, lineas concordantes cuando se omite la opcion -v,
o lineas que no concuerden cuando se especifica -v). Sin
embargo, si se especifican la capacidad booleana rv y la
opcion -v, se aplicara a las lineas de concordancia
contextuales. No esta definido ningun valor
predeterminado, por lo que se mostrara el par de colores
predeterminado del terminal.
cx= Subcadena SGR para lineas contextuales completas (es
decir, lineas que no concuerdan cuando se omite la opcion
-v, o lineas concordantes cuando se especifica -v). Sin
embargo, si se definen la capacidad booleana rv y la
opcion -v, se aplicara a las lineas seleccionadas que no
concuerden. No esta definido ningun valor predeterminado
por lo que se usara el par de colores predeterminado del
terminal.
rv Valor booleano que invierte el significado de las
capacidades sl= y cx=cuando se define la opcion -v. Por
defecto es falso, es decir que se omite la capacidad.
mt=01;31
Subcadena SGR para que concuerde cualquier text no nulo
en cualquier linea concordante (es decir, una linea
seleccionada cuando se omite la opcion -v, o una linea de
contexto cuando se especifica -v). Establecer esto
equivale a establecer ms= y mc= a la vez y con el mismo
valor. El valor predeterminado es un texto rojo en
negrita sobre el fondo que ya este definido.
ms=01;31
Subcadena SGR para que concuerde cualquier texto no nulo
en una linea seleccionada. Esto solo se usa cuando se
omite la opcion -v). El efecto de la capacidad sl= (o cx=
si rv) permanece activo cuando esto se activa. El valor
predeterminado es un texto rojo en negrita sobre el fondo
ya configurado.
mc=01;31
Subcadena SGR para que concuerde cualquier texto no nulo
en una linea contextual. Esto solo se usa cuando se
define la opcion -v). El efecto de la capacidad cx= (o
sl= si rv) permanece activo cuando esto se activa. El
valor predeterminado es un texto rojo en negrita sobre el
fondo ya configurado.
fn=35 Subcadena SGR para nombres de archivos antepuestos a
cualquier linea de contenido. El valor predeterminado es
un texto magenta sobre el fondo predeterminado del
terminal.
ln=32 Subcadena SGR para nombres de archivos antepuestos a
cualquier linea de contenido. El valor predeterminado es
un texto magenta sobre el fondo predeterminado del
terminal.
bn=32 Subcadena SGR para desplazamientos de bytes antepuestos a
cualquier linea de contenido. El valor predeterminado es
un texto verde sobre el fondo predeterminado del
terminal.
se=36 Subcadena SGR para separadores que se insertan entre
campos de linea seleccionados (:), entre campos de linea
contextuales (-) y entre grupos de lineas adyacentes
cuando se especifica un contexto distinto de cero (-- ).
El valor predeterminado es un texto cian sobre el fondo
predeterminado del terminal.
ne Valor booleano que impide borrar hasta el final de la
linea usando Borrar en linea (EL) a la derecha (\33[K)
cada vez que finaliza un elemento coloreado. Esto es
necesario en terminales en los que EL no es compatible.
Por lo demas, es util en terminales para los cuales no se
aplica la capacidad booleana terminfo back_color_erase
(bce), cuando los colores de resaltado elegidos no
afectan el fondo, o cuando EL es demasiado lento o causa
demasiado parpadeo. El valor predeterminado es 'false',
es decir que se omite esta capacidad.
Tenga en cuenta que las capacidades booleanas no tienen parte
=.... Se omiten (es decir, son falsos) por defecto y pasan a ser
verdaderos cuando se definen.
Consulte la seccion Seleccionar representacion grafica (SGR por
sus siglas en ingles) en la documentacion del terminal de texto
que se utiliza para los valores permitidos y su significado como
atributos de caracteres. Estos valores de subcadena son numeros
enteros en representacion decimal y ueden concatenarse mediantes
punto y comas. grep se encarga de unir el resultado en una
secuencia SGR completa (\33[...m). Los valores habituales son: 1
para negrita, 4 para subrayado, 5 para parpadeo, 7 para inverso,
39 para color de primer plano predeterminado, 30 a 37. para
colores de primer plano, 90 a 97 para colores de primer plano en
modo de 16 colores, 38;5;0 a 38;5;255 para colores de primer
plano en modo de 88 y 256 colores , 49 para el color de fondo
predeterminado, 40 a 47 para los colores de fondo, 100 a 107
para los colores de fondo del modo de 16 colores y 48;5;0 para
48;5;255 para colores de fondo en modos de 88 colores y 256
colores.
LC_ALL, LC_COLLATE, LANG
Estas variables especifican la configuracion regional para la
categoria LC_COLLATE, que determina el metodo de clasificacion
empleado para interpretar expresiones de rango como [a-z].
LC_ALL, LC_CTYPE, LANG
Estas variables definen la configuracion regional para la
categoria LC_CTYPE, que determina el tipo de caracteres, por
ejemplo, que caracteres son espacios en blanco. Esta categoria
tambien determina la codificacion de caracteres, es decir, si el
texto esta codificado en UTF-8, ASCII o alguna otra
codificacion. En la configuracion regional C o POSIX, todos los
caracteres se codifican como un solo byte y cada byte es un
caracter valido.
LC_ALL, LC_MESSAGES, LANG
Estas variables definen la configuracion regional para la
categoria LC_MESSAGES, que determina el idioma que grep usa para
sus mensajes. Con la configuracion regional predeterminada 'C'
se emitiran mensajes en ingles americano.
POSIXLY_CORRECT
Si esta definido, el funcionamiento de grep cumple con POSIX; si
no lo esta, grep funciona de modo mas similar a otros programas
GNU. POSIX requiere que las opciones que siguen a los nombres de
archivos se traten como nombres de archivos; De forma
predeterminada, dichas opciones se transladan al inicio de la
lista de operandos y se tratan como opciones. Ademas, POSIX
requiere que las opciones no reconocidas se traten como
'ilegales', pero como en realidad no lo son, por defecto se
tratan como 'invalidas'.
NOTAS
Esta pagina de manual no se mantienede forma rigurosa. La documentacion
completa suele estar mas actualizada.
COPYRIGHT
Copyright 1998-2000, 2002, 2005-2023 Free Software Foundation, Inc.
Esto es software libre; consulte el codigo fuente para concoer las
condiciones de distribucion. NO existe garantia alguna; ni siquiera
acerca de la COMERCIALIZACION o la IDONEIDAD DE SU USO PARA UN FIN
CONCRETO.
ERRORES
Informar de Errores
Envie informes de error a bug-grep@gnu.org, tambien puede consultar el
archivo de la lista de correo en
https://lists.gnu.org/mailman/listinfo/bug-grep y el sistema de
seguimiento de errores:
https://debbugs.gnu.org/cgi/pkgreport.cgi?package=grep.
Errores Conocidos
Numeros de repeticion grandes en la construccion {n,m} pueden hacer que
grep emplee grandes cantidades de memoria. En adicion a esto, ciertas
otras oscuras expresiones regulares requieren tiempo y espacio
exponenciales, y pueden hacer que grep se quede sin memoria.
Las referencias inversas son muy lentas, y pueden requerir un tiempo
exponencial.
EJEMPLO
El siguiente ejemplo mostrara la ubicacion y el contenido de cualquier
linea que contenga "f" y termine en ".c", dentro de todos los archivos
en el directorio actual cuyos nombres contengan "g" y terminen en ".h'
'. La opcion -n genera numeros de linea, el argumento -- trata las
expansiones de "*g*.h" que comienzan con "-" como nombres de
archivos,en lugar de considerarlas opciones, y el archivo /dev/null
hace que se generen nombres de archivos incluso si solo un nombre de
archivo tiene la forma "*g*.h".
$ grep -n -- 'f.*\.c$' *g*.h /dev/null
argmatch.h:1:/* definiciones y prototipos para argmatch.c
La unica linea que concuerda es la linea 1 de argmatch.h. Tenga en
cuenta que la sintaxis de expresion regular utilizada en el patron
difiere de la sintaxis que utiliza la shell para que concuerden los
nombres de los archivos.
VEASE TAMBIEN
Paginas de Manual Genericas
awk(1), cmp(1), diff(1), find(1), perl(1), sed(1), sort(1), xargs(1),
read(2), pcre2(3), pcre2syntax(3), pcre2pattern(3), terminfo(5),
glob(7), regex(7)
Documentacion Completa
Esta disponible un manual completo
grep,la orden
info grep
deberia mostrarle el manual completo.
TRADUCCION
La traduccion al espanol de esta pagina del manual fue creada por
Gerardo Aburruzaga Garcia y Marcos Fouces
Esta traduccion es documentacion libre; lea la GNU General Public
License Version 3 o
posterior con respecto a las condiciones de copyright. No existe
NINGUNA RESPONSABILIDAD.
Si encuentra algun error en la traduccion de esta pagina del manual,
envie un correo electronico a .
GNU grep 3.11 2019-12-29 GREP(1)