.\" -*- coding: UTF-8 -*- .de dT .ds Dt \\$2 .. .\" GNU grep man page .dT Time-stamp: 2019-12-29 .\" Update the above date whenever a change to either this file or .\" grep.c's 'usage' function results in a nontrivial change to the man page. .\" In Emacs, you can update the date by running 'M-x time-stamp' .\" after you make a change that you decide is nontrivial. .\" It is no big deal to forget to update the date. . .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH GREP 1 \*(Dt "GNU grep 3.11" "Comandos de usuário" . .if !\w|\*(lq| \{\ .\" groff an-old.tmac does not seem to be in use, so define lq and rq. . ie \n(.g \{\ . ds lq \(lq\" . ds rq \(rq\" . \} . el \{\ . ds lq `` . ds rq '' . \} .\} . .if !\w|\*(la| \{\ .\" groff an-ext.tmac does not seem to be in use, so define the parts of .\" it that are used below. For a copy of groff an-ext.tmac, please see: .\" https://git.savannah.gnu.org/cgit/groff.git/plain/tmac/an-ext.tmac .\" --- Start of lines taken from groff an-ext.tmac . .\" Check whether we are using grohtml. .nr mH 0 .if \n(.g \ . if '\*(.T'html' \ . nr mH 1 . . .\" Map mono-width fonts to standard fonts for groff's TTY device. .if n \{\ . do ftr CR R . do ftr CI I . do ftr CB B .\} . .\" groff has glyph entities for angle brackets. .ie \n(.g \{\ . ds la \(la\" . ds ra \(ra\" .\} .el \{\ . ds la <\" . ds ra >\" . \" groff's man macros control hyphenation with this register. . nr HY 1 .\} . .\" Start URL. .de UR . ds m1 \\$1\" . nh . if \\n(mH \{\ . \" Start diversion in a new environment. . do ev URL-div . do di URL-div . \} .. . . .\" End URL. .de UE . ie \\n(mH \{\ . br . di . ev . . \" Has there been one or more input lines for the link text? . ie \\n(dn \{\ . do HTML-NS "" . \" Yes, strip off final newline of diversion and emit it. . do chop URL-div . do URL-div . do HTML-NS . \} . el \ . do HTML-NS "\\*(m1" \&\\$*\" . \} . el \ \\*(la\\*(m1\\*(ra\\$*\" . . hy \\n(HY .. . . .\" Start email address. .de MT . ds m1 \\$1\" . nh . if \\n(mH \{\ . \" Start diversion in a new environment. . do ev URL-div . do di URL-div . \} .. . . .\" End email address. .de ME . ie \\n(mH \{\ . br . di . ev . . \" Has there been one or more input lines for the link text? . ie \\n(dn \{\ . do HTML-NS "" . \" Yes, strip off final newline of diversion and emit it. . do chop URL-div . do URL-div . do HTML-NS . \} . el \ . do HTML-NS "\\*(m1" \&\\$*\" . \} . el \ \\*(la\\*(m1\\*(ra\\$*\" . . hy \\n(HY .. .\" --- End of lines taken from groff an-ext.tmac .\} . .hy 0 . .SH NOME grep, egrep, fgrep, rgrep \- emite linhas que coincidem com padrões . .SH SINOPSE \fBgrep\fP [\fIOPÇÃO\fP.\|.\|.]\& \fIPADRÕES\fP [\fIARQUIVO\fP.\|.\|.] .br \fBgrep\fP [\fIOPÇÃO\fP.\|.\|.]\& \fB\-e\fP \fIPADRÕES\fP \&.\|.\|.\& [\fIARQUIVO\fP.\|.\|.] .br \fBgrep\fP [\fIOPÇÃO\fP.\|.\|.]\& \fB\-f\fP \fIARQUIVO_PADRÃO\fP \&.\|.\|.\& [\fIARQUIVO\fP.\|.\|.] . .SH DESCRIÇÃO \fBgrep\fP pesquisa \fIPADRÕES\fP em cada \fIARQUIVO\fP. \fIPADRÕES\fP é um ou mais padrões separados por caracteres de nova linha e \fBgrep\fP emite cada linha que coincide com um padrão. Normalmente, \fIPADRÕES\fP deve ser colocado entre aspas quando \fBgrep\fP é usado em um comando shell. .PP Um \fIARQUIVO\fP de \*(lq\fB\-\fP\*(rq significa entrada padrão. Se nenhum \fIARQUIVO\fP for fornecido, as pesquisas recursivas examinam o diretório de trabalho e as pesquisas não\-recursivas leem a entrada padrão. .PP Debian also includes the variant programs \fBegrep\fP, \fBfgrep\fP and \fBrgrep\fP. These programs are the same as \fBgrep\ \-E\fP, \fBgrep\ \-F\fP, and \fBgrep\ \-r\fP, respectively. These variants are deprecated upstream, but Debian provides for backward compatibility. For portability reasons, it is recommended to avoid the variant programs, and use \fBgrep\fP with the related option instead. . .SH OPÇÕES .SS "Informações genéricas do programa" .TP \fB\-\^\-help\fP Emite uma mensagem de uso e sai. .TP \fB\-V\fP, \fB\-\^\-version\fP Mostra o número de versão do \fBgrep\fP e sai. .SS "Sintaxe de padrão" .TP \fB\-E\fP, \fB\-\^\-extended\-regexp\fP Interpreta \fIPADRÕES\fP como expressões regulares estendidas (EREs, veja abaixo). .TP \fB\-F\fP, \fB\-\^\-fixed\-strings\fP Interpreta \fIPADRÕES\fP como textos fixos, não como expressões regulares. .TP \fB\-G\fP, \fB\-\^\-basic\-regexp\fP Interpreta \fIPADRÕES\fP como expressões regulares básicas (BREs, veja abaixo). Esse é o padrão. .TP \fB\-P\fP, \fB\-\^\-perl\-regexp\fP Interpret \fIPATTERNS\fP as Perl\-compatible regular expressions (PCREs). This option is experimental when combined with the \fB\-z\fP (\fB\-\^\-null\-data\fP) option, and \fBgrep \-P\fP may warn of unimplemented features. .SS "Controle de coincidências" .TP \fB\-e\fP\fI PADRÕES\fP,\fB \-\^\-regexp=\fP\fIPADRÕES\fP Usa \fIPADRÕES\fP como os padrões. Se esta opção for usada várias vezes ou for combinada com a opção \fB\-f\fP (\fB\-\^\-file\fP), pesquisa por todos os padrões fornecidos. Esta opção pode ser usada para proteger um padrão começando com \*(lq\-\*(rq. .TP \fB\-f\fP\fI ARQUIVO\fP,\fB \-\^\-file=\fP\fIARQUIVO\fP Obtain patterns from \fIFILE\fP, one per line. If this option is used multiple times or is combined with the \fB\-e\fP (\fB\-\^\-regexp\fP) option, search for all patterns given. The empty file contains zero patterns, and therefore matches nothing. If \fIFILE\fP is \fB\-\fP , read patterns from standard input. .TP \fB\-i\fP, \fB\-\^\-ignore\-case\fP Ignora as diferenças entre maiúsculas e minúsculas nos padrões e nos dados de entrada, para que os caracteres que diferem apenas no caso de coincidirem um ao outro. .TP \fB\-\^\-no\-ignore\-case\fP Não ignora as diferenças entre maiúsculas e minúsculas nos padrões e nos dados de entrada. Esse é o padrão. Esta opção é útil para passar para shell scripts que já usam \fB\-i\fP, para cancelar seus efeitos porque as duas opções se substituem. .TP \fB\-v\fP, \fB\-\^\-invert\-match\fP Inverte o sentido de coincidência, para selecionar linhas que não coincidem. .TP \fB\-w\fP, \fB\-\^\-word\-regexp\fP Seleciona apenas as linhas que coincidem formando palavras inteiras. O teste é que a parte de texto coincidente deve estar no início da linha ou precedida por um caractere que não seja de palavra. Da mesma forma, ele deve estar no final da linha ou ser seguido por um caractere que não seja de palavra. Os caracteres constituintes da palavra são letras, dígitos e o sublinhado. Esta opção não tem efeito se \fB\-x\fP também estiver especificado. .TP \fB\-x\fP, \fB\-\^\-line\-regexp\fP Seleciona apenas as partes de texto que coincidem exatamente com a linha inteira. Para um padrão de expressão regular, é como colocar parênteses no padrão e depois envolvê\-lo com \fB^\fP e \fB$\fP. .SS "Controle geral de saída" .TP \fB\-c\fP, \fB\-\^\-count\fP Suppress normal output; instead print a count of matching lines for each input file. With the \fB\-v\fP, \fB\-\^\-invert\-match\fP option (see above), count non\-matching lines. .TP \fB\-\^\-color\fP[\fB=\fP\fIQUANDO\fP], \fB\-\^\-colour\fP[\fB=\fP\fIQUANDO\fP] Surround the matched (non\-empty) strings, matching lines, context lines, file names, line numbers, byte offsets, and separators (for fields and groups of context lines) with escape sequences to display them in color on the terminal. The colors are defined by the environment variable \fBGREP_COLORS\fP. \fIWHEN\fP is \fBnever\fP, \fBalways\fP, or \fBauto\fP. .TP \fB\-L\fP, \fB\-\^\-files\-without\-match\fP Suppress normal output; instead print the name of each input file from which no output would normally have been printed. .TP \fB\-l\fP, \fB\-\^\-files\-with\-matches\fP Suppress normal output; instead print the name of each input file from which output would normally have been printed. Scanning each input file stops upon first match. .TP \fB\-m\fP\fI NÚM\fP,\fB \-\^\-max\-count=\fP\fINÚM\fP Stop reading a file after \fINUM\fP matching lines. If \fINUM\fP is zero, \fBgrep\fP stops right away without reading input. A \fINUM\fP of \-1 is treated as infinity and \fBgrep\fP does not stop; this is the default. If the input is standard input from a regular file, and \fINUM\fP matching lines are output, \fBgrep\fP ensures that the standard input is positioned to just after the last matching line before exiting, regardless of the presence of trailing context lines. This enables a calling process to resume a search. When \fBgrep\fP stops after \fINUM\fP matching lines, it outputs any trailing context lines. When the \fB\-c\fP or \fB\-\^\-count\fP option is also used, \fBgrep\fP does not output a count greater than \fINUM\fP. When the \fB\-v\fP or \fB\-\^\-invert\-match\fP option is also used, \fBgrep\fP stops after outputting \fINUM\fP non\-matching lines. .TP \fB\-o\fP, \fB\-\^\-only\-matching\fP Emite apenas as partes coincidentes (não vazias) de uma ocorrência, com cada uma dessas partes em uma linha de saída separada. .TP \fB\-q\fP, \fB\-\^\-quiet\fP, \fB\-\^\-silent\fP Quieto; não escreve nada na saída padrão. Sai imediatamente com o status zero se alguma coincidente for encontrada, mesmo que um erro tenha sido detectado. Consulte também a opção \fB\-s\fP ou \fB\-\^\-no\-messages\fP. .TP \fB\-s\fP, \fB\-\^\-no\-messages\fP Inibe mensagens de erro sobre arquivos inexistentes ou ilegíveis. .SS "Controle de prefixo de linha de saída" .TP \fB\-b\fP, \fB\-\^\-byte\-offset\fP Emite a posição de byte baseada em 0 no arquivo de entrada antes de cada linha de saída. Se \fB\-o\fP (\fB\-\^\-only\-matching\fP) for especificado, emite a posição da própria parte coincidente. .TP \fB\-H\fP, \fB\-\^\-with\-filename\fP Print the file name for each match. This is the default when there is more than one file to search. This is a GNU extension. .TP \fB\-h\fP, \fB\-\^\-no\-filename\fP Inibe a prefixação dos nomes dos arquivos na saída. Esse é o padrão quando há apenas um arquivo (ou apenas entrada padrão) para pesquisar. .TP \fB\-\^\-label=\fP\fIRÓTULO\fP Exibe a entrada proveniente da entrada padrão como uma entrada proveniente do \fIRÓTULO\fP de arquivo. Isso pode ser útil para comandos que transformam o conteúdo de um arquivo antes de pesquisar, por exemplo, \fBgzip \-cd foo.gz | grep \-\^\-label=foo \-H 'algum padrão'\fP. Veja também a opção \fB\-H\fP. .TP \fB\-n\fP, \fB\-\^\-line\-number\fP Prefixa cada linha de saída com o número da linha com base em 1 em seu arquivo de entrada. .TP \fB\-T\fP, \fB\-\^\-initial\-tab\fP Verifica se o primeiro caractere do conteúdo real da linha está em uma parada de tabulação, para que o alinhamento das tabulações pareça normal. Isso é útil com opções que prefixam sua saída para o conteúdo real: \fB\-H\fP, \fB\-n\fP e \fB\-b\fP. Para aumentar a probabilidade de que as linhas de um único arquivo sejam iniciadas na mesma coluna, isso também faz com que o número da linha e a posição de bytes (se houver) sejam emitidos em uma largura de campo de tamanho mínimo. .TP \fB\-Z\fP, \fB\-\^\-null\fP Emite um byte zero (o caractere ASCII \fBNUL\fP) em vez do caractere que normalmente segue um nome de arquivo. Por exemplo, \fBgrep \-lZ\fP gera um byte zero após cada nome de arquivo, em vez da nova linha usual. Essa opção torna a saída inequívoca, mesmo na presença de nomes de arquivos contendo caracteres incomuns, como novas linhas. Essa opção pode ser usada com comandos como \fBfind \-print0\fP, \fBperl \-0\fP, \fBsort \-z\fP e \fBxargs \-0\fP para processar nomes de arquivos arbitrários, mesmo aqueles que contêm caracteres de nova linha. .SS "Controle de linha de contexto" .TP \fB\-A\fP\fI NÚM\fP,\fB \-\^\-after\-context=\fP\fINÚM\fP Emite \fINÚM\fP linhas de contexto à direita após as ocorrências. Coloca uma linha que contém um separador de grupo (\fB\-\^\-\fP) entre grupos contíguos de coincidências. Com a opção \fB\-o\fP ou \fB\-\^\-only\-matching\fP, isso não tem efeito e um aviso é dado. .TP \fB\-B\fP\fI NÚM\fP,\fB \-\^\-before\-context=\fP\fINÚM\fP Emite \fINÚM\fP linhas de contexto no início antes das ocorrências. Coloca uma linha que contém um separador de grupo (\fB\-\^\-\fP) entre grupos contíguos de coincidências. Com a opção \fB\-o\fP ou \fB\-\^\-only\-matching\fP, isso não tem efeito e um aviso é dado. .TP \fB\-C\fP\fI NÚM\fP,\fB \-\fP\fINÚM\fP,\fB \-\^\-context=\fP\fINÚM\fP Emite \fINÚM\fP linhas de saída do contexto. Coloca uma linha que contém um separador de grupo (\fB\-\^\-\fP) entre grupos contíguos de coincidências. Com a opção \fB\-o\fP ou \fB\-\^\-only\-matching\fP, isso não tem efeito e um aviso é dado. .TP \fB\-\^\-group\-separator=\fP\fISEP\fP When \fB\-A\fP, \fB\-B\fP, or \fB\-C\fP are in use, print \fISEP\fP instead of \fB\-\^\-\fP between groups of lines. .TP \fB\-\^\-no\-group\-separator\fP When \fB\-A\fP, \fB\-B\fP, or \fB\-C\fP are in use, do not print a separator between groups of lines. .SS "Seleção de arquivo e diretório" .TP \fB\-a\fP, \fB\-\^\-text\fP Processa um arquivo binário como se fosse texto; isso é equivalente à opção \fB\-\^\-binary\-files=text\fP. .TP \fB\-\^\-binary\-files=\fP\fITIPO\fP Se os dados ou metadados de um arquivo indicarem que o arquivo contém dados binários, supõe que o arquivo seja do tipo \fITIPO\fP. Bytes sem texto indicam dados binários; esses são bytes de saída codificados incorretamente para o código do idioma atual ou bytes de entrada nulos quando a opção \fB\-z\fP não é fornecida. .IP By default, \fITYPE\fP is \fBbinary\fP, and \fBgrep\fP suppresses output after null input binary data is discovered, and suppresses output lines that contain improperly encoded data. When some output is suppressed, \fBgrep\fP follows any output with a message to standard error saying that a binary file matches. .IP Se \fITIPO\fP for \fBwithout\-match\fP, quando \fBgrep\fP descobre dados binários de entrada nula, ele presume que o restante do arquivo não coincide; isso é equivalente à opção \fB\-I\fP. .IP Se \fITIPO\fP for \fBtext\fP, \fBgrep\fP processa um arquivo binário como se fosse texto; isso é equivalente à opção \fB\-a\fP. .IP Quando \fItipo\fP é \fBbinary\fP, \fBgrep\fP pode tratar bytes, que não sejam de texto, como terminadores de linha, mesmo sem a opção \fB\-z\fP. Isso significa que escolher \fBbinary\fP em vez de \fBtext\fP pode afetar se um padrão coincide com um arquivo. Por exemplo, quando \fItipo\fP é \fBbinary\fP, o padrão \fBq$ might\fP coincide com \fBq\fP imediatamente seguido por um byte nulo, mesmo que isso não coincida quando \fItipo\fP é \fBtext\fP. Por outro lado, quando \fItipo\fP é \fBbinary\fP, o padrão \fB.\&\fP (ponto) pode não coincidir a um byte nulo. .IP \fIAviso:\fP A opção \fB\-a\fP pode gerar lixo binário, que pode ter efeitos colaterais desagradáveis se a saída for um terminal e se o driver do terminal interpretar alguns deles como comandos. Por outro lado, ao ler arquivos cujas codificações de texto são desconhecidas, pode ser útil usar \fB\-a\fP ou definir \fBLC_ALL='C'\fP no ambiente, para encontrar ocorrências, mesmo que estas não sejam seguras para exibição direta. .TP \fB\-D\fP\fI AÇÃO\fP,\fB \-\^\-devices=\fP\fIAÇÃO\fP Se um arquivo de entrada for um dispositivo, FIFO ou soquete, usa \fIAÇÃO\fP para processá\-lo. Por padrão, \fIAÇÃO\fP é \fBread\fP, o que significa que os dispositivos são lidos como se fossem arquivos comuns. Se \fIAÇÃO\fP for \fBskip\fP, os dispositivos serão ignorados silenciosamente. .TP \fB\-d\fP\fI AÇÃO\fP,\fB \-\^\-directories=\fP\fIAÇÃO\fP Se um arquivo de entrada for um diretório, usa \fIAÇÃO\fP para processá\-lo. Por padrão, \fIAÇÃO\fP é \fBread\fP, ou seja, lê os diretórios como se fossem arquivos comuns. Se \fIAÇÃO\fP for \fBskip\fP, pula silenciosamente os diretórios. Se \fIAÇÃO\fP for \fBrecurse\fP, lê todos os arquivos em cada diretório, recursivamente, seguindo os links simbólicos apenas se estiverem na linha de comando. Isso é equivalente à opção \fB\-r\fP. .TP \fB\-\^\-exclude=\fP\fIGLOB\fP Pula qualquer arquivo de linha de comando com um sufixo de nome que coincida com o padrão \fIGLOB\fP, usando coincidência de curinga; um sufixo de nome é o nome inteiro ou uma parte à direita que começa com um caractere sem barra imediatamente após uma barra (\fB/\fP) no nome. Ao pesquisar recursivamente, pula qualquer subarquivo cujo nome base coincida com \fIGLOB\fP; o nome base é a parte após a última barra. Um padrão pode usar \fB*\fP, \fB?\fP e \fB[\fP.\|.\|.\fB]\&\fP como curingas e \fB\e\fP para colocar entre aspas um caractere curinga ou barra invertida literalmente. .TP \fB\-\^\-exclude\-from=\fP\fIARQUIVO\fP Ignora arquivos cujo nome base coincide com qualquer um dos globs de nome de arquivo lidos em \fIARQUIVO\fP (usando a coincidência curinga conforme descrito em \fB\-\^\-exclude\fP). .TP \fB\-\^\-exclude\-dir=\fP\fIGLOB\fP Pula qualquer diretório da linha de comandos com um sufixo de nome que coincida com o padrão \fIGLOB\fP. Ao pesquisar recursivamente, pula qualquer subdiretório cujo nome base coincida com \fIGLOB\fP. Ignora as barras finais redundantes em \fIGLOB\fP. .TP \fB\-I\fP Processa um arquivo binário como se não contivesse dados de coincidência isso é equivalente à opção \fB\-\^\-binary\-files=without\-match\fP. .TP \fB\-\^\-include=\fP\fIGLOB\fP Pesquisa apenas arquivos cujo nome base coincida a \fIGLOB\fP (usando coincidência de curinga conforme descrito em \fB\-\^\-exclude\fP). Se as opções \fB\-\^\-include\fP e \fB\-\^\-exclude\fP contraditórias forem fornecidas, a última coincidência vence. Se nenhuma opção \fB\-\^\-include\fP ou \fB\-\^\-exclude\fP coincidir, um arquivo será incluído, a menos que a primeira opção seja \fB\-\^\-include\fP. .TP \fB\-r\fP, \fB\-\^\-recursive\fP Read all files under each directory, recursively, following symbolic links only if they are on the command line. Note that if no file operand is given, \fBgrep\fP searches the working directory. This is equivalent to the \fB\-d recurse\fP option. .TP \fB\-R\fP, \fB\-\^\-dereference\-recursive\fP Lê todos os arquivos em cada diretório, recursivamente. Segue todos os links simbólicos, ao contrário de \fB\-r\fP. .SS "Outras opções" .TP \fB\-\^\-line\-buffered\fP Usa buffer de linha na saída. Isso pode causar uma penalidade de desempenho. .TP \fB\-U\fP, \fB\-\^\-binary\fP Trata os arquivos como binários. Por padrão, em MS\-DOS e MS\-Windows, \fBgrep\fP calcula se um arquivo é texto ou binário, conforme descrito para a opção \fB\-\^\-binary\-files\fP. Se \fBgrep\fP decidir que o arquivo é um arquivo de texto, ele remove os caracteres CR do conteúdo original do arquivo (para fazer expressões regulares com \fB^\fP e \fB$\fP funcionarem corretamente). A especificação de \fB\-U\fP anula essas suposições, fazendo com que todos os arquivos sejam lidos e passados para o mecanismo de coincidência literalmente; se o arquivo for um arquivo de texto com pares CR/LF no final de cada linha, isso fará com que algumas expressões regulares falhem. Esta opção não tem efeito em plataformas diferentes do MS\-DOS e MS\-Windows. .TP \fB\-z\fP, \fB\-\^\-null\-data\fP Trata os dados de entrada e saída como sequências de linhas, cada uma terminada por um byte zero (o caractere ASCII NUL) em vez de uma nova linha. Como a opção \fB\-Z\fP ou \fB\-\^\-null\fP, esta opção pode ser usada com comandos como \fBsort \-z\fP para processar nomes de arquivos arbitrários. . .SH "EXPRESSÕES REGULARES" Uma expressão regular é um padrão que descreve um conjunto de textos. Expressões regulares são construídas analogamente às expressões aritméticas, usando vários operadores para combinar expressões menores. .PP \fBgrep\fP understands three different versions of regular expression syntax: \*(lqbasic\*(rq (BRE), \*(lqextended\*(rq (ERE) and \*(lqperl\*(rq (PCRE). In GNU \fBgrep\fP, 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 \fBpcre2syntax\fP(3) and \fBpcre2pattern\fP(3), but work only if PCRE support is enabled. .PP Os blocos de construção fundamentais são as expressões regulares que coincidem com um único caractere. A maioria dos caracteres, incluindo todas as letras e dígitos, são expressões regulares coincidentes. Qualquer metacaractere com significado especial pode ser citado precedendo\-o com uma barra invertida. .PP O ponto \fB.\&\fP coincide com qualquer caractere único. Não é especificado se coincide com um erro de codificação. .SS "Classes de caracteres e expressões entre colchetes" Uma \fIexpressão entre colchetes\fP é uma lista de caracteres entre \fB[\fP e \fB]\fP. Coincide com qualquer caractere único nessa lista. Se o primeiro caractere da lista for o sinal de intercalação \fB^\fP, ele coincidirá com qualquer caractere que \fInão\fP esteja na lista; não é especificado se coincide com um erro de codificação. Por exemplo, a expressão regular \fB[0123456789]\fP coincide com qualquer dígito único. .PP Dentro de uma expressão entre colchetes, uma \fIexpressão de intervalo\fP consiste em dois caracteres separados por um hífen. Coincide com qualquer caractere único que classifique entre os dois caracteres, inclusive, usando a sequência de agrupamento e o conjunto de caracteres da localidade. Por exemplo, no código de idioma C padrão, \fB[a\-d]\fP é equivalente a \fB[abcd]\fP. Muitos códigos de idioma classificam caracteres na ordem do dicionário e, nesses locais, \fB[a\-d]\fP normalmente não é equivalente a \fB[abcd]\fP; pode ser equivalente a \fB[aBbCcDd]\fP, por exemplo. Para obter a interpretação tradicional de expressões entre colchetes, você pode usar o código de idioma C configurando a variável de ambiente \fBLC_ALL\fP para o valor \fBC\fP. .PP Finalmente, certas classes nomeadas de caracteres são predefinidas nas expressões entre colchetes, da seguinte maneira. Seus nomes são autoexplicativos e são \fB[:alnum:]\fP, \fB[:alpha:]\fP, \fB[:blank:]\fP, \fB[:cntrl:]\fP, \fB[:digit:]\fP, \fB[:graph:]\fP, \fB[:lower:]\fP, \fB[:print:]\fP, \fB[:punct:]\fP, \fB[:space:]\fP, \fB[:upper:]\fP e \fB[:xdigit:]\fP. Por exemplo, \fB[[:alnum:]]\fP significa a classe de caracteres de números e letras no local atual. Na localidade C e na codificação do conjunto de caracteres ASCII, é igual a \fB[0\-9A\-Za\-z]\fP. (Observe que os colchetes nesses nomes de classe fazem parte dos nomes simbólicos e devem ser incluídos além dos colchetes que delimitam a expressão entre colchetes.) A maioria dos metacaracteres perde seu significado especial nas expressões entre colchetes. Para incluir um \fB]\fP literal, coloque\-o primeiro na lista. Da mesma forma, para incluir um \fB^\fP literal, coloque\-o em qualquer lugar, exceto primeiro. Finalmente, para incluir um literal \fB\-\fP, coloque\-o por último. .SS Ancoragem O acento circunflexo (caret) \fB^\fP e o cifrão \fB$\fP são metacaracteres que coincidem respectivamente com o texto vazio no início e no final de uma linha. .SS "O caractere de barra invertida e expressões especiais" Os símbolos \fB\e<\fP e \fB\e>\fP respectivamente coincidem com o texto vazio no início e no final de uma palavra. O símbolo \fB\eb\fP coincide com o texto vazio na borda de uma palavra e \fB\eB\fP coincide com o texto vazio, desde que eu não esteja na borda de uma palavra. O símbolo \fB\ew\fP é sinônimo de \fB[_[:alnum:]]\fP e \fB\eW\fP é sinônimo de \fB[^_[:alnum:]]\fP. .SS Repetição Uma expressão regular pode ser seguida por um dos vários operadores de repetição: .PD 0 .TP \fB?\fP O item anterior é opcional e coincide com o máximo uma vez. .TP \fB*\fP O item anterior coincidirá com zero ou mais vezes. .TP \fB+\fP O item anterior coincidirá com uma ou mais vezes. .TP \fB{\fP\fIn\fP\fB}\fP O item anterior é coincidido exatamente \fIn\fP vezes. .TP \fB{\fP\fIn\fP\fB,}\fP O item anterior é coincidido a \fIn\fP ou mais vezes. .TP \fB{,\fP\fIm\fP\fB}\fP O item anterior é coincidido no máximo \fIm\fP vezes. Esta é uma extensão GNU. .TP \fB{\fP\fIn\fP\fB,\fP\fIm\fP\fB}\fP O item anterior é coincidido pelo menos \fIn\fP vezes, mas não mais que \fIm\fP vezes. .PD .SS Concatenação Duas expressões regulares podem ser concatenadas; a expressão regular resultante coincide com qualquer sequência formada concatenando duas partes de texto que coincidem respectivamente às expressões concatenadas. .SS Alternação Duas expressões regulares podem ser unidas pelo operador de infixo \fB|\fP; a expressão regular resultante coincide com qualquer texto que coincida com a expressão alternativa. .SS Precedência A repetição tem precedência sobre a concatenação, que por sua vez tem precedência sobre a alternância. Uma expressão inteira pode estar entre parênteses para substituir essas regras de precedência e formar uma subexpressão. .SS "Retrorreferências e subexpressões" The back\-reference \fB\e\fP\fIn\fP \&, where \fIn\fP is a single digit, matches the substring previously matched by the \fIn\fPth parenthesized subexpression of the regular expression. .SS "Expressões regulares básicas vs estendidas" Nas expressões regulares básicas, os metacaracteres \fB?\fP, \fB+\fP, \fB{\fP, \fB|\fP, \fB(\fP e \fB)\fP perdem seu significado especial; em vez disso, use as versões com barra invertida \fB\e?\fP, \fB\e+\fP, \fB\e{\fP, \fB\e|\fP, \fB\e(\fP e \fB\e)\fP. . .SH "STATUS DE SAÍDA" Normalmente, o status de saída é 0 se uma linha for selecionada, 1 se nenhuma linha foi selecionada e 2 se ocorreu um erro. No entanto, se B \fB\-q\fP ou \fB\-\^\-quiet\fP ou \fB\-\^\-silent\fP for usado e uma linha for selecionada, o status de saída será 0, mesmo que tenha ocorrido um erro. . .SH AMBIENTE O comportamento de \fBgrep\fP é afetado pelas seguintes variáveis de ambiente. .PP O código do idioma da categoria \fBLC_\fP\fIfoo\fP é especificado examinando as três variáveis de ambiente \fBLC_ALL\fP, \fBLC_\fP\fIfoo\fP, \fBLANG\fP, nessa ordem. A primeira dessas variáveis configuradas especifica o código do idioma. Por exemplo, se \fBLC_ALL\fP não estiver definido, mas \fBLC_MESSAGES\fP estiver definido como \fBpt_BR\fP, o código do idioma português do Brasil será usado para a categoria \fBLC_MESSAGES\fP. O código de idioma C é usado se nenhuma dessas variáveis de ambiente estiver definida, se o catálogo de códigos de idioma não estiver instalado ou se \fBgrep\fP não tiver sido compilado com suporte ao idioma nacional (NLS). O comando de shell \fBlocale \-a\fP lista as localidades que estão disponíveis no momento. .TP \fBGREP_COLORS\fP Controls how the \fB\-\^\-color\fP option highlights output. Its value is a colon\-separated list of capabilities that defaults to \fBms=01;31:mc=01;31:sl=:cx=:fn=35:ln=32:bn=32:se=36\fP with the \fBrv\fP and \fBne\fP boolean capabilities omitted (i.e., false). Supported capabilities are as follows. .RS .TP \fBsl=\fP Parte de texto de SGR para linhas selecionadas inteiras (ou seja, ocorrências quando a opção de linha de comando \fB\-v\fP for omitida ou linhas não coincidentes quando \fB\-v\fP for especificado). Se, no entanto, o recurso booleano \fBrv\fP e a opção de linha de comando \fB\-v\fP forem especificadas, ela se aplicará às ocorrências ao contexto. O padrão está vazio (ou seja, o par de cores padrão do terminal). .TP \fBcx=\fP Parte de texto de SGR para linhas de contexto inteiras (ou seja, linhas não coincidentes quando a opção de linha de comando \fB\-v\fP for omitida ou ocorrências quando \fB\-v\fP for especificado). Se, no entanto, o recurso booleano \fBrv\fP e a opção de linha de comando \fB\-v\fP forem especificadas, ela se aplicará às linhas não coincidentes selecionadas. O padrão está vazio (ou seja, o par de cores padrão do terminal). .TP \fBrv\fP Valor booleano que reverte (troca) os significados dos recursos \fBsl=\fP e \fBcx=\fP quando a opção da linha de comandos \fB\-v\fP é especificada. O padrão é falso (ou seja, o recurso é omitido). .TP \fBmt=01;31\fP Parte de texto de SGR para coincidir com um texto não vazio em qualquer ocorrência (ou seja, uma linha selecionada quando a opção de linha de comando \fB\-v\fP for omitida ou uma linha de contexto quando \fB\-v\fP for especificado). Definir isso é equivalente a definir \fBms=\fP e \fBmc=\fP de uma só vez para o mesmo valor. O padrão é um primeiro plano em texto em negrito sobre o plano de fundo da linha atual. .TP \fBms=01;31\fP Parte de texto de SGR para coincidir com um texto não vazio em uma linha selecionada. (Isso é usado apenas quando a opção de linha de comando \fB\-v\fP é omitida.) O efeito do recurso \fBsl=\fP (ou \fBcx=\fP se \fBrv\fP) permanece ativo quando isso ocorre. O padrão é um primeiro plano em texto em negrito sobre o plano de fundo da linha atual. .TP \fBmc=01;31\fP Parte de texto de SGR para coincidir com um texto não vazio em uma linha de contexto. (Isso é usado apenas quando a opção de linha de comando \fB\-v\fP é especificada.) O efeito do recurso \fBcx=\fP (ou \fBsl=\fP se \fBrv\fP) permanece ativo quando isso ocorre. O padrão é um primeiro plano em texto em negrito sobre o plano de fundo da linha atual. .TP \fBfn=35\fP Parte de texto de SGR para nomes de arquivos que prefixam qualquer linha de conteúdo. O padrão é um texto em primeiro plano de magenta sobre o plano de fundo padrão do terminal. .TP \fBln=32\fP Parte de texto de SGR para números de linhas que prefixam qualquer linha de conteúdo. O padrão é um texto em primeiro plano verde sobre o plano de fundo padrão do terminal. .TP \fBbn=32\fP Parte de texto de SGR para posições de bytes que prefixam qualquer linha de conteúdo. O padrão é um texto em primeiro plano verde sobre o plano de fundo padrão do terminal. .TP \fBse=36\fP Parte de texto de SGR para separadores que são inseridos entre os campos de linha selecionados (\fB:\fP), entre os campos de linha de contexto, (\fB\-\fP) e entre grupos de linhas adjacentes quando um contexto diferente de zero é especificado (\fB\-\^\-\fP). O padrão é um texto em primeiro plano ciano sobre o plano de fundo padrão do terminal. .TP \fBne\fP Valor booleano que impede a limpeza até o final da linha usando Apagar na Linha (EL) para Direita (\fB\e33[K\fP) toda vez que um item colorido termina. Isso é necessário em terminais nos quais o EL não é suportado. Caso contrário, é útil em terminais para os quais o recurso booleano terminfo \fBback_color_erase\fP (\fBbce\fP) não se aplica, quando as cores de realce escolhidas não afetam o plano de fundo ou quando o EL é muito lento ou causa muita oscilação. O padrão é falso (ou seja, o recurso é omitido). .PP Observe que os recursos booleanos não possuem uma parte \fB=\fP.\|.\|.\&. Eles são omitidos (ou seja, false) por padrão e se tornam verdadeiros quando especificados. .PP Consulte a seção Select Graphic Rendition (SGR) na documentação do terminal de texto usado para valores permitidos e seu significado como atributos de caractere. Esses valores de parte de texto são números inteiros na representação decimal e podem ser concatenados com ponto e vírgula. O \fBgrep\fP cuida da montagem do resultado em um texto SGR completo (\fB\e33[\fP.\|.\|.\fBm\fP). Os valores comuns a concatenar incluem \fB1\fP para negrito, \fB4\fP para sublinhado, \fB5\fP para piscar, \fB7\fP para inversa, \fB39\fP para cor de primeiro plano padrão, \fB30\fP a \fB37\fP para cores de primeiro plano, \fB90\fP a \fB97\fP para modo de 16 cores de primeiro plano, \fB38;5;0\fP a \fB38;5;255\fP para modos de 88 cores e 256 cores de primeiro plano, \fB49\fP para cor de plano de fundo padrão, \fB40\fP a \fB47\fP para cores de plano de fundo, \fB100\fP a \fB107\fP para cores de plano de fundo no modo de 16 cores e \fB48;5;0\fP para \fB48;5;255\fP para os modos 88 e 256 cores. .RE .TP \fBLC_ALL\fP, \fBLC_COLLATE\fP, \fBLANG\fP Essas variáveis especificam o código de idioma da categoria \fBLC_COLLATE\fP, que determina a sequência de agrupamento usada para interpretar expressões de intervalo como \fB[a\-z]\fP. .TP \fBLC_ALL\fP, \fBLC_CTYPE\fP, \fBLANG\fP Essas variáveis especificam o código de idioma da categoria \fBLC_CTYPE\fP, que determina o tipo de caracteres, por exemplo, quais caracteres são espaços em branco. Essa categoria também determina a codificação de caracteres, ou seja, se o texto é codificado em UTF\-8, ASCII ou alguma outra codificação. No código de idioma C ou POSIX, todos os caracteres são codificados como um único byte e cada byte é um caractere válido. .TP \fBLC_ALL\fP, \fBLC_MESSAGES\fP, \fBLANG\fP Essas variáveis especificam o código de idioma da categoria \fBLC_MESSAGES\fP, que determina o idioma que \fBgrep\fP usa para mensagens. A localidade C padrão usa mensagens em inglês americano. .TP \fBPOSIXLY_CORRECT\fP If set, \fBgrep\fP behaves as POSIX requires; otherwise, \fBgrep\fP 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 \*(lqillegal\*(rq, but since they are not really against the law the default is to diagnose them as \*(lqinvalid\*(rq. . .SH NOTAS Esta página man é mantida apenas de forma adequada; a documentação completa geralmente é mais atualizada. . .SH "DIREITOS AUTORAIS" Copyright 1998\-2000, 2002, 2005\-2023 Free Software Foundation, Inc. .PP Este é um software livre; consulte o código\-fonte para condições de cópia. Há NENHUMA garantia; nem mesmo para COMERCIALIZAÇÃO ou ADEQUAÇÃO A UM OBJETIVO ESPECÍFICO. . .SH BUGS .SS "Relatando erros" Envie por e\-mail relatórios de erros para .MT bug\-grep@gnu.org o endereço de relatório de erros .ME . Um .UR https://lists.gnu.org/mailman/listinfo/bug\-grep arquivo de e\-mails .UE e um .UR https://debbugs.gnu.org/cgi/pkgreport.cgi?package=grep rastreador de erros .UE estão disponíveis. .SS "Erros conhecidos" Grandes contagens de repetição na construção \fB{\fP\fIn\fP\fB,\fP\fIm\fP\fB}\fP podem fazer com que \fBgrep\fP use muita memória. Além disso, certas outras expressões regulares obscuras exigem tempo e espaço exponenciais e podem causar a falta de memória de \fBgrep\fP. .PP As retrorreferências são muito lentas e podem exigir tempo exponencial. . .SH EXEMPLO O exemplo a seguir exibe o local e o conteúdo de qualquer linha que contém \*(lqf\*(rq e termina em \*(lq.c\*(rq, em todos os arquivos no diretório atual cujos nomes contêm \*(lqg\*(rq e terminam em \*(lq.h\*(rq. A opção \fB\-n\fP emite números de linha, o argumento \fB\-\-\fP trata expansões de \*(lq*g*.h\*(rq começando com \*(lq\-\*(rq como nomes de arquivos, não como opções, e o arquivo vazio /dev/null faz com que os nomes dos arquivos sejam gerados, mesmo que apenas um nome esteja no formato \*(lq*g*.h\*(rq. .PP .in +2n .EX $ \fBgrep\fP \-n \-\- 'f.*\e.c$' *g*.h /dev/null argmatch.h:1:/* definitions and prototypes for argmatch.c .EE .in .PP A única linha que coincide é a linha 1 de argmatch.h. Observe que a sintaxe da expressão regular usada no padrão difere da sintaxe flutuante que o shell usa para coincidir com os nomes dos arquivos. . .SH "VEJA TAMBÉM" .SS "Páginas de manual comuns" \fBawk\fP(1), \fBcmp\fP(1), \fBdiff\fP(1), \fBfind\fP(1), \fBperl\fP(1), \fBsed\fP(1), \fBsort\fP(1), \fBxargs\fP(1), \fBread\fP(2), \fBpcre2\fP(3), \fBpcre2syntax\fP(3), \fBpcre2pattern\fP(3), \fBterminfo\fP(5), \fBglob\fP(7), \fBregex\fP(7) .SS "Documentação completa" Um .UR https://www.gnu.org/software/grep/manual/ manual completo .UE está disponível. Se os programas \fBinfo\fP e \fBgrep\fP estiverem instalados adequadamente em seu sistema, o comando .IP \fBinfo grep\fP .PP deve lhe dar acesso ao manual completo. . .\" Work around problems with some troff -man implementations. .br . .\" Format for Emacs-maintained Dt string defined at this file's start. .\" Local variables: .\" time-stamp-format: "%:y-%02m-%02d" .\" End: .PP .SH TRADUÇÃO A tradução para português brasileiro desta página man foi criada por Rafael Fontenelle . .PP Esta tradução é uma documentação livre; leia a .UR https://www.gnu.org/licenses/gpl-3.0.html Licença Pública Geral GNU Versão 3 .UE ou posterior para as condições de direitos autorais. Nenhuma responsabilidade é aceita. .PP Se você encontrar algum erro na tradução desta página de manual, envie um e-mail para .MT debian-l10n-portuguese@lists.debian.org a lista de discussão de tradutores .ME .