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. Warning: The -a option might output binary garbage, which can have nasty side effects if the output is a terminal and if the terminal driver interprets some of it as commands. On the other hand, when reading files whose text encodings are unknown, it can be helpful to use -a or to set LC_ALL='C' in the environment, in order to find more matches even if the matches are unsafe for direct display. -D ACCION, --devices=ACCION If an input file is a device, FIFO or socket, use ACTION to process it. By default, ACTION is read, which means that devices are read just as if they were ordinary files. If ACTION is skip, devices are silently skipped. -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 Skip any command-line file with a name suffix that matches the pattern GLOB, using wildcard matching; a name suffix is either the whole name, or a trailing part that starts with a non-slash character immediately after a slash (/) in the name. When searching recursively, skip any subfile whose base name matches GLOB; the base name is the part after the last slash. A pattern can use *, ?, and [...] as wildcards, and \ to quote a wildcard or backslash character literally. --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 Search only files whose base name matches GLOB (using wildcard matching as described under --exclude). If contradictory --include and --exclude options are given, the last matching one wins. If no --include or --exclude options match, a file is included unless the first such option is --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 Treat input and output data as sequences of lines, each terminated by a zero byte (the ASCII NUL character) instead of a newline. Like the -Z or --null option, this option can be used with commands like sort -z to process arbitrary file names. 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 understands three different versions of regular expression syntax: "basic" (BRE), "extended" (ERE) and "perl" (PCRE). In GNU grep, basic and extended regular expressions are merely different notations for the same pattern-matching functionality. In other implementations, basic regular expressions are ordinarily less powerful than extended, though occasionally it is the other way around. The following description applies to extended regular expressions; differences for basic regular expressions are summarized afterwards. Perl-compatible regular expressions have different functionality, and are documented in pcre2syntax(3) and pcre2pattern(3), but work only if PCRE support is enabled. 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 A bracket expression is a list of characters enclosed by [ and ]. It matches any single character in that list. If the first character of the list is the caret ^ then it matches any character not in the list; it is unspecified whether it matches an encoding error. For example, the regular expression [0123456789] matches any single digit. Within a bracket expression, a range expression consists of two characters separated by a hyphen. It matches any single character that sorts between the two characters, inclusive, using the locale's collating sequence and character set. For example, in the default C locale, [a-d] is equivalent to [abcd]. Many locales sort characters in dictionary order, and in these locales [a-d] is typically not equivalent to [abcd]; it might be equivalent to [aBbCcDd], for example. To obtain the traditional interpretation of bracket expressions, you can use the C locale by setting the LC_ALL environment variable to the value C. Finally, certain named classes of characters are predefined within bracket expressions, as follows. Their names are self explanatory, and they are [:alnum:], [:alpha:], [:blank:], [:cntrl:], [:digit:], [:graph:], [:lower:], [:print:], [:punct:], [:space:], [:upper:], and [:xdigit:]. For example, [[:alnum:]] means the character class of numbers and letters in the current locale. In the C locale and ASCII character set encoding, this is the same as [0-9A-Za-z]. (Note that the brackets in these class names are part of the symbolic names, and must be included in addition to the brackets delimiting the bracket expression.) Most meta-characters lose their special meaning inside bracket expressions. To include a literal ] place it first in the list. Similarly, to include a literal ^ place it anywhere but first. Finally, to include a literal - place it last. 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. The locale for category LC_foo is specified by examining the three environment variables LC_ALL, LC_foo, LANG, in that order. The first of these variables that is set specifies the locale. For example, if LC_ALL is not set, but LC_MESSAGES is set to pt_BR, then the Brazilian Portuguese locale is used for the LC_MESSAGES category. The C locale is used if none of these environment variables are set, if the locale catalog is not installed, or if grep was not compiled with national language support (NLS). The shell command locale -a lists locales that are currently available. GREP_COLORS Controls how the --color option highlights output. Its value is a colon-separated list of capabilities that defaults to ms=01;31:mc=01;31:sl=:cx=:fn=35:ln=32:bn=32:se=36 with the rv and ne boolean capabilities omitted (i.e., false). Supported capabilities are as follows. sl= SGR substring for whole selected lines (i.e., matching lines when the -v command-line option is omitted, or non-matching lines when -v is specified). If however the boolean rv capability and the -v command-line option are both specified, it applies to context matching lines instead. The default is empty (i.e., the terminal's default color pair). cx= SGR substring for whole context lines (i.e., non-matching lines when the -v command-line option is omitted, or matching lines when -v is specified). If however the boolean rv capability and the -v command-line option are both specified, it applies to selected non-matching lines instead. The default is empty (i.e., the terminal's default color pair). 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 SGR substring for matching non-empty text in any matching line (i.e., a selected line when the -v command-line option is omitted, or a context line when -v is specified). Setting this is equivalent to setting both ms= and mc= at once to the same value. The default is a bold red text foreground over the current line background. ms=01;31 SGR substring for matching non-empty text in a selected line. (This is only used when the -v command-line option is omitted.) The effect of the sl= (or cx= if rv) capability remains active when this kicks in. The default is a bold red text foreground over the current line background. mc=01;31 SGR substring for matching non-empty text in a context line. (This is only used when the -v command-line option is specified.) The effect of the cx= (or sl= if rv) capability remains active when this kicks in. The default is a bold red text foreground over the current line background. fn=35 SGR substring for file names prefixing any content line. The default is a magenta text foreground over the terminal's default background. ln=32 SGR substring for line numbers prefixing any content line. The default is a green text foreground over the terminal's default background. bn=32 SGR substring for byte offsets prefixing any content line. The default is a green text foreground over the terminal's default background. se=36 SGR substring for separators that are inserted between selected line fields (:), between context line fields, (-), and between groups of adjacent lines when nonzero context is specified (--). The default is a cyan text foreground over the terminal's default background. ne Boolean value that prevents clearing to the end of line using Erase in Line (EL) to Right (\33[K) each time a colorized item ends. This is needed on terminals on which EL is not supported. It is otherwise useful on terminals for which the back_color_erase (bce) boolean terminfo capability does not apply, when the chosen highlight colors do not affect the background, or when EL is too slow or causes too much flicker. The default is false (i.e., the capability is omitted). Note that boolean capabilities have no =... part. They are omitted (i.e., false) by default and become true when specified. See the Select Graphic Rendition (SGR) section in the documentation of the text terminal that is used for permitted values and their meaning as character attributes. These substring values are integers in decimal representation and can be concatenated with semicolons. grep takes care of assembling the result into a complete SGR sequence (\33[...m). Common values to concatenate include 1 for bold, 4 for underline, 5 for blink, 7 for inverse, 39 for default foreground color, 30 to 37 for foreground colors, 90 to 97 for 16-color mode foreground colors, 38;5;0 to 38;5;255 for 88-color and 256-color modes foreground colors, 49 for default background color, 40 to 47 for background colors, 100 to 107 for 16-color mode background colors, and 48;5;0 to 48;5;255 for 88-color and 256-color modes background colors. LC_ALL, LC_COLLATE, LANG These variables specify the locale for the LC_COLLATE category, which determines the collating sequence used to interpret range expressions like [a-z]. LC_ALL, LC_CTYPE, LANG These variables specify the locale for the LC_CTYPE category, which determines the type of characters, e.g., which characters are whitespace. This category also determines the character encoding, that is, whether text is encoded in UTF-8, ASCII, or some other encoding. In the C or POSIX locale, all characters are encoded as a single byte and every byte is a valid character. LC_ALL, LC_MESSAGES, LANG These variables specify the locale for the LC_MESSAGES category, which determines the language that grep uses for messages. The default C locale uses American English messages. POSIXLY_CORRECT If set, grep behaves as POSIX requires; otherwise, grep behaves more like other GNU programs. POSIX requires that options that follow file names must be treated as file names; by default, such options are permuted to the front of the operand list and are treated as options. Also, POSIX requires that unrecognized options be diagnosed as "illegal", but since they are not really against the law the default is to diagnose them as "invalid". 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 Email bug reports to the bug-reporting address . An email archive and a bug tracker are available. 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 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. EJEMPLO The following example outputs the location and contents of any line containing "f" and ending in ".c", within all files in the current directory whose names contain "g" and end in ".h". The -n option outputs line numbers, the -- argument treats expansions of "*g*.h" starting with "-" as file names not options, and the empty file /dev/null causes file names to be output even if only one file name happens to be of the form "*g*.h". $ grep -n -- 'f.*\.c$' *g*.h /dev/null argmatch.h:1:/* definiciones y prototipos para argmatch.c The only line that matches is line 1 of argmatch.h. Note that the regular expression syntax used in the pattern differs from the globbing syntax that the shell uses to match file names. 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 A complete manual is available. If the info and grep programs are properly installed at your site, the command info grep deberia acceder al 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)