Grep- (1) página manual

Grep- (1) página manual

Nome

grep, egrep, fGrep, rgrep - linhas de impressão que correspondem a um padrão

Sinopse

grep [[Opções] PADRÃO [[ARQUIVO...]
grep [[Opções] [-e PADRÃO | -f ARQUIVO] [ARQUIVO...]

Descrição

grep pesquisa a entrada nomeada ARQUIVOs (ou entrada padrão se nenhum arquivo for nomeado, ou se um único hífen-minus (-) é dado como nome de arquivo) para linhas que contêm uma correspondência com a dada PADRÃO. Por padrão, grep imprime as linhas correspondentes.

Além disso, três programas variantes egrep, FGREP e rgrep Estão disponíveis. egrep é o mesmo que grep -e. FGREP é o mesmo que grep -f. rgrep é o mesmo que grep -r. Invocação direta como egrep ou FGREP está preguiçoso, mas é fornecido para permitir aplicações históricas que dependem deles para executar.

Opções

Informações genéricas do programa

-ajuda
Imprima uma mensagem de uso resumindo brevemente essas opções de linha de comando e o endereço de relatório de bugs, depois saia.
-V, -versão
Imprima o número da versão de grep para o fluxo de saída padrão. Este número de versão deve ser incluído em todos os relatórios de bug (veja abaixo).

Seleção de fósforos

-E, -Regexp estendido
Interpretar PADRÃO Como uma expressão regular prolongada (ERE, veja abaixo). (-E é especificado por Posix .)
-F, -cordas fixas
Interpretar PADRÃO como uma lista de seqüências fixas, separadas por newlines, qualquer uma das quais deve ser combinada. (-F é especificado por Posix .)
-G, -Regexp básico
Interpretar PADRÃO Como uma expressão regular básica (BRE, veja abaixo). Este é o padrão.
-P, -Perl-Regexp
Interpretar PADRÃO Como uma expressão regular Perl. Isso é altamente experimental e grep -p pode alertar sobre recursos não implementados.

Controle correspondente

-e PADRÃO, -regexp =PADRÃO
Usar PADRÃO como o padrão. Isso é útil para proteger os padrões que começam com hífen-minus (-). (-e é especificado por Posix .)
-f ARQUIVO, -arquivo =ARQUIVO
Obter padrões de ARQUIVO, Um por linha. O arquivo vazio contém zero padrões e, portanto, não corresponde nada. (-f é especificado por Posix .)
-eu, -ignorar caso
Ignorar distinções de casos em ambos PADRÃO e os arquivos de entrada. (-eu é especificado por Posix .)
-v, -Inverter-se-match
Inverta o sentido de correspondência, para selecionar linhas não correspondentes. (-v é especificado por Posix .)
-c, -Word-Regexp
Selecione apenas essas linhas contendo correspondências que formam palavras inteiras. O teste é que a substring correspondente deve estar no início da linha ou precedida por um caráter constituinte não-palavra. Da mesma forma, deve estar no final da linha ou seguido por um caráter constituinte não-palavra. Personagens-constituintes de palavras são cartas, dígitos e o sublinhado.
-x, -Line-Regexp
Selecione apenas as correspondências que correspondem exatamente a toda a linha. (-x é especificado por Posix .)
-y
Sinônimo obsoleto para -eu.

Controle geral de saída

-c, -contar
Suprimir a saída normal; Em vez disso, imprima uma contagem de linhas correspondentes para cada arquivo de entrada. Com o -v, -Inverter-se-match Opção (veja abaixo), contagem de linhas não correspondentes. (-c é especificado por Posix .)
-cor[[=QUANDO], -cor[[=QUANDO]
Envolver as cordas combinadas (não vazias), linhas correspondentes, linhas de contexto, nomes de arquivos, números de linha, compensações de bytes e separadores (para campos e grupos de linhas de contexto) com sequências de fuga para exibi-las em cores no terminal. As cores são definidas pela variável ambiente GREP_COLORS. A variável de ambiente descontinuado Grep_color ainda é suportado, mas sua configuração não tem prioridade. QUANDO é nunca, sempre, ou auto.
-eu, -arquivos sem correspondência
Suprimir a saída normal; Em vez disso, imprima o nome de cada arquivo de entrada do qual nenhuma saída normalmente teria sido impressa. A digitalização vai parar na primeira partida.
-eu, -arquivos com correspondência
Suprimir a saída normal; Em vez disso, imprima o nome de cada arquivo de entrada do qual a saída normalmente teria sido impressa. A digitalização vai parar na primeira partida. (-eu é especificado por Posix .)
-m Num, -contagem máxima =Num
Pare de ler um arquivo depois Num linhas correspondentes. Se a entrada for entrada padrão de um arquivo regular e Num Linhas correspondentes são emitidas, grep Garante que a entrada padrão esteja posicionada logo após a última linha correspondente antes de sair, independentemente da presença de linhas de contexto à direita. Isso permite um processo de chamada para retomar uma pesquisa. Quando grep Pare depois Num Linhas correspondentes, ele gera qualquer linha de contexto à direita. Quando o -c ou -contar a opção também é usada, grep não produz uma contagem maior que Num. Quando o -v ou -Inverter-se-match a opção também é usada, grep Paradas após a saída Num linhas não correspondentes.
-o, -apenas correspondendo
Imprima apenas as partes correspondentes (não vazios) de uma linha correspondente, com cada parte dessas em uma linha de saída separada.
-q, -quieto, -silencioso
Quieto; Não escreva nada para a saída padrão. Saia imediatamente com status zero se alguma correspondência for encontrada, mesmo que um erro fosse detectado. Veja também o -s ou -sem mensagens opção. (-q é especificado por Posix .)
-s, -sem mensagens
Suprimir mensagens de erro sobre arquivos inexistentes ou ilegíveis. Nota de portabilidade: ao contrário do GNU grep, 7ª edição Unix grep não se conformou com Posix, porque faltava -q e os seus -s opção comportada como gnu grep's -q opção. USG -estilo grep também faltava -q mas é -s opção comportada como gnu grep. Scripts de shell portáteis devem evitar os dois -q e -s e deve redirecionar a saída padrão e de erro para /dev/null em vez de. (-s é especificado por Posix .)

Controle de prefixo da linha de saída

-b, -Offset de byte
Imprima o deslocamento de byte baseado em 0 dentro do arquivo de entrada antes de cada linha de saída. Se -o (-apenas correspondendo) é especificado, imprima o deslocamento da própria parte correspondente.
-H, -com filenome
Imprima o nome do arquivo para cada partida. Este é o padrão quando há mais de um arquivo para pesquisar.
-h, -sem filenome
Suprimir a prefixação dos nomes de arquivos na saída. Este é o padrão quando há apenas um arquivo (ou apenas entrada padrão) para pesquisar.
-etiqueta =RÓTULO
Exibir a entrada realmente proveniente de entrada padrão como entrada proveniente do arquivo RÓTULO. Isso é especialmente útil para ferramentas como zGrep, e.g., gzip -cd foo.gz | Grep -label = Foo algo
-n, -número da linha
Prefixo cada linha de saída com o número de linha baseado em 1 dentro de seu arquivo de entrada. (-n é especificado por Posix .)
-T, -TAB inicial
Verifique se o primeiro caractere do conteúdo da linha real está em uma parada de guia, para que o alinhamento das guias pareça normal. Isso é útil com opções que prefixam sua saída para o conteúdo real: -H,-n, e -b. Para melhorar a probabilidade de que as linhas de um único arquivo iniciem na mesma coluna, isso também faz.
-você, -Unix-byte-offsets
Relatar compensações de bytes no estilo Unix. Este interruptor causa grep Para relatar compensações de bytes como se o arquivo fosse um arquivo de texto no estilo Unix, eu.e., Com os personagens de CR despojados. Isso produzirá resultados idênticos à execução grep em uma máquina Unix. Esta opção não tem efeito a menos que -b a opção também é usada; Não tem efeito em outras plataformas além do MS -DOS e MS -Windows.
-Z, -nulo
Saída um byte zero (o ASCII NUL personagem) em vez do personagem que normalmente segue um nome de arquivo. Por exemplo, grep -lz produz um byte zero após cada nome de arquivo em vez da nova linha usual. Esta opção torna a saída inequívoca, mesmo na presença de nomes de arquivos que contêm caracteres incomuns como novas linhas. Esta opção pode ser usada com comandos como Encontre -print0, Perl -0, classificar -z, e XARGS -0 Para processar nomes de arquivos arbitrários, mesmo aqueles que contêm novos caracteres.

Controle de linha de contexto

-A Num, -pós-contexto =Num
Imprimir Num linhas de contexto à direita após linhas correspondentes. Coloca uma linha contendo um separador de grupo (-) entre grupos contíguos de correspondências. Com o -o ou -apenas correspondendo opção, isso não tem efeito e um aviso é dado.
-B Num, -antes do contexto =Num
Imprimir Num linhas de contexto líder antes de combinar linhas. Coloca uma linha contendo um separador de grupo (-) entre grupos contíguos de correspondências. Com o -o ou -apenas correspondendo opção, isso não tem efeito e um aviso é dado.
-C Num, -Num, -contexto =Num
Imprimir Num linhas de contexto de saída. Coloca uma linha contendo um separador de grupo (-) entre grupos contíguos de correspondências. Com o -o ou -apenas correspondendo opção, isso não tem efeito e um aviso é dado.

Seleção de arquivos e diretórios

-a, -texto
Processar um arquivo binário como se fosse texto; Isso é equivalente ao -Files binários = texto opção.
-Files binários =TIPO
Se os primeiros bytes de um arquivo indicarem que o arquivo contém dados binários, suponha que o arquivo seja do tipo TIPO. Por padrão, TIPO é binário, e grep Normalmente produz uma mensagem de uma linha dizendo que um arquivo binário corresponde ou nenhuma mensagem se não houver correspondência. Se TIPO é sem correspondência, grep assume que um arquivo binário não corresponde; Isso é equivalente ao -EU opção. Se TIPO é texto, grep processa um arquivo binário como se fosse texto; Isso é equivalente ao -a opção. Aviso: Grep -Files Binários = Texto 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.
-D AÇÃO, -dispositivos =AÇÃO
Se um arquivo de entrada for um dispositivo, FIFO ou soquete, use AÇÃO para processá -lo. Por padrão, AÇÃO é ler, o que significa que os dispositivos são lidos como se fossem arquivos comuns. Se AÇÃO é pular, Os dispositivos são silenciosamente ignorados.
-d AÇÃO, -diretórios =AÇÃO
Se um arquivo de entrada for um diretório, use AÇÃO para processá -lo. Por padrão, AÇÃO é ler, o que significa que os diretórios são lidos como se fossem arquivos comuns. Se AÇÃO é pular, Os diretórios são pulados silenciosamente. Se AÇÃO é recurso, grep lê todos os arquivos em cada diretório, recursivamente; Isso é equivalente ao -r opção.
-exclua =Glob
Pular arquivos cujo nome base corresponda Glob (usando correspondência curinga). Um glob de nome de arquivo pode usar *, ?, e [[.. ] como curingas e \ Para citar um caráter curinga ou barragem literalmente.
-exclude deARQUIVO
Pule arquivos cujo nome base corresponde a qualquer um dos globos de nome de arquivo lidos de ARQUIVO (usando correspondência curinga, conforme descrito em -excluir).
-exclude-Dir =Dir
Exclua diretórios que correspondem ao padrão Dir de pesquisas recursivas.
-EU
Processar um arquivo binário como se não contenha dados correspondentes; Isso é equivalente ao -Files binários = sem correspondência opção.
-incluir =Glob
Pesquise apenas arquivos cujo nome base corresponde Glob (usando correspondência curinga, conforme descrito em -excluir).
-R, -r, -recursivo
Leia todos os arquivos em cada diretório, recursivamente; Isso é equivalente ao -D Recurse opção.

Outras opções

-buffer de linha
Use buffer de linha na saída. Isso pode causar uma penalidade de desempenho.
-mmap
Se possível, use o mmap(2) chamada do sistema para ler a entrada, em vez do padrão ler(2) chamada do sistema. Em algumas situações, -mmap produz melhor desempenho. No entanto, -mmap pode causar comportamento indefinido (incluindo dumps centrais) se um arquivo de entrada diminuir enquanto grep está operando ou se ocorrer um erro de E/S ocorrer.
-você, -binário
Trate o (s) arquivo (s) como binário. Por padrão, sob MS -DOS e MS -Windows, grep adivinha o tipo de arquivo observando o conteúdo dos primeiros 32kb lida do arquivo. Se grep decide que o arquivo é um arquivo de texto, retira os caracteres do CR do conteúdo original do arquivo (para fazer expressões regulares com ^ e $ funcionar corretamente). Especificação -você anula essa adivinhação, fazendo com que todos os arquivos sejam lidos e transmitidos para o mecanismo de correspondência literalmente; Se o arquivo for um arquivo de texto com pares de CR/LF no final de cada linha, isso fará com que algumas expressões regulares falhem. Esta opção não tem efeito em outras plataformas além do MS -DOS e MS -Windows.
-z, -Data nulo
Trate a entrada como um conjunto de linhas, cada uma demitida por um byte zero (o ASCII NUL personagem) em vez de uma nova linha. Como o -Z ou -nulo opção, esta opção pode ser usada com comandos como classificar -z Para processar nomes de arquivos arbitrários.

Expressões regulares

Uma expressão regular é um padrão que descreve um conjunto de strings. Expressões regulares são construídas analogamente a expressões aritméticas, usando vários operadores para combinar expressões menores.

grep Entende duas versões diferentes da sintaxe de expressão regular: 'Basic' e 'Extended.'Em GNU grep, Não há diferença na funcionalidade disponível usando uma sintaxe. Em outras implementações, expressões regulares básicas são menos poderosas. A descrição a seguir se aplica a expressões regulares prolongadas; As diferenças para expressões regulares básicas são resumidas depois.

Os blocos de construção fundamentais são as expressões regulares que correspondem a um único caractere. A maioria dos personagens, incluindo todas as cartas e dígitos, são expressões regulares que se combinam. Qualquer meta-caractere com significado especial pode ser citado precedendo-o com uma barra de barra.

O período . corresponde a qualquer personagem.

Classes de personagens e expressões de suporte

A Expressão do suporte é uma lista de caracteres fechados por [[ e ]. Ele corresponde a qualquer caractere nessa lista; Se o primeiro personagem da lista for o cuidador ^ então corresponde a qualquer personagem não na lista. Por exemplo, a expressão regular [0123456789] corresponde a qualquer único dígito.

Dentro de uma expressão de suporte, um Expressão da faixa consiste em dois caracteres separados por um hífen. Ele corresponde a qualquer personagem que classifique entre os dois caracteres, inclusive, usando a sequência de coleta e o conjunto de personagens do local. Por exemplo, no local padrão C, [de Anúncios] é equivalente a [ABCD]. Muitos locais classificam os personagens em ordem de dicionário e nesses locais [de Anúncios] normalmente não é equivalente a [ABCD]; pode ser equivalente a [ABBCCDD], por exemplo. Para obter a interpretação tradicional das expressões de suporte, você pode usar o local C definindo o Lc_all Variável de ambiente para o valor C.

Finalmente, certas classes nomeadas de caracteres são predefinidas nas expressões de suporte, como segue. Seus nomes são auto -explicativos e eles são [: Alnum:], [:alfa:], [: cntrl:], [: Digit:], [:gráfico:], [:mais baixo:], [:imprimir:], [: pontuação:], [:espaço:], [:superior:], e [: xdigit:]. Por exemplo, [[: Alnum:]] significa [0-9A-ZA-Z], Exceto que a última forma depende da codificação C Locale e da ASCII, enquanto o primeiro é independente do local e do conjunto de personagens. (Observe que os colchetes nesses nomes de classe fazem parte dos nomes simbólicos e devem ser incluídos, além dos colchetes, delimitando a expressão do suporte.) A maioria dos meta-caracteres perde seu significado especial dentro de expressões de suporte. Para incluir um literal ] coloque -o primeiro na lista. Da mesma forma, para incluir um literal ^ coloque -o em qualquer lugar, mas primeiro. Finalmente, para incluir um literal - coloque -o por último.

Ancoragem

O cuidador ^ e o sinal de dólar $ são meta-caracteres que correspondem respectivamente à corda vazia no início e no final de uma linha.

O personagem de barra de barragem e expressões especiais

Os símbolos \< e \> respectivamente corresponde à corda vazia no início e no final de uma palavra. O símbolo \ b combina com a corda vazia na beira de uma palavra, e \ B corresponde à sequência vazia, desde que seja não na beira de uma palavra. O símbolo \c é um sinônimo de [[: Alnum:]] e \C é um sinônimo de [^[: Alnum:]].

Repetição

Uma expressão regular pode ser seguida por um dos vários operadores de repetição:

?
O item anterior é opcional e combinado no máximo uma vez.
*
O item anterior será correspondido zero ou mais vezes.
+
O item anterior será correspondido uma ou mais vezes.
n
O item anterior é correspondido exatamente n vezes.
n,
O item anterior é comparado n ou mais vezes.
,m
O item anterior é correspondido no máximo m vezes.
n,m
O item anterior é correspondido pelo menos n vezes, mas não mais do que m vezes.

Concatenação

Duas expressões regulares podem ser concatenadas; A expressão regular resultante corresponde a qualquer string formada concatenando duas substrings que correspondam respectivamente às expressões concatenadas.

Alternância

Duas expressões regulares podem ser acompanhadas pelo operador de infix |; A expressão regular resultante corresponde a qualquer string que corresponda à expressão alternativa.

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 completa pode ser fechada entre parênteses para substituir essas regras de precedência e formar uma subexpressão.

Referências de volta e subexpressões

A referência de volta \n, onde n é um único dígito, corresponde à substring anteriormente correspondente pelo na subexpressão entre parênteses da expressão regular.

Expressões regulares básicas vs estendidas

Nas expressões regulares básicas, os meta-caracteres ?, +, , |, (, e ) perder seu significado especial; Em vez disso, use as versões barris \?, \+, \ , \ |, \ (, e \).

Tradicional egrep não apoiou o meta-caractere, e alguns egrep Suporte de implementações \ Em vez disso, os scripts portáteis devem evitar em grep -e padrões e deve usar [] Para combinar com um literal .

GNU grep -e tentativas de apoiar o uso tradicional assumindo que não é especial se seria o início de uma especificação de intervalo inválida. Por exemplo, o comando grep -e aq 1aq Procura a corda de dois caracteres 1 Em vez de relatar um erro de sintaxe na expressão regular. Posix.2 permite esse comportamento como uma extensão, mas scripts portáteis devem evitá -lo.

variáveis ​​ambientais

O comportamento de grep é afetado pelas seguintes variáveis ​​de ambiente.

O local para categoria LC_foo é especificado examinando as três variáveis ​​de ambiente Lc_all, LC_foo, Lang, naquela ordem. A primeira dessas variáveis ​​que é definida especifica o local. Por exemplo, se Lc_all não está definido, mas LC_MESSAGES está configurado para pt_br, Então o local do brasileiro português é usado para o LC_MESSAGES categoria. O local C é usado se nenhuma dessas variáveis ​​de ambiente estiver definida, se o catálogo de localidade não for instalado, ou se grep não foi compilado com o apoio nacional do idioma (NLS).

Grep_Options
Esta variável especifica opções padrão a serem colocadas na frente de quaisquer opções explícitas. Por exemplo, se Grep_Options é Aq-binário-Files = Without-Match -Directories = Skipaq, grep se comporta como se as duas opções -Files binários = sem correspondência e -diretórios = pular havia sido especificado antes de quaisquer opções explícitas. As especificações da opção são separadas pelo espaço em branco. Uma barra de barriga escapa ao próximo personagem, para que possa ser usado para especificar uma opção contendo espaço em branco ou uma barra de barragem.
Grep_color
Esta variável especifica a cor usada para destacar o texto (não vazio) (não vazio). Está preterido a favor de GREP_COLORS, mas ainda suportado. O mt, EM, e mc capacidades de GREP_COLORS ter prioridade sobre isso. Ele pode especificar apenas a cor usada para destacar o texto não vazio em qualquer linha correspondente (uma linha selecionada quando o -v a opção de linha de comando é omitida ou uma linha de contexto quando -v é especificado). O padrão é 01; 31, o que significa um texto em prosperidade vermelha em negrito no fundo padrão do terminal.
GREP_COLORS
Especifica as cores e outros atributos usados ​​para destacar várias partes da saída. Seu valor é uma lista separada por cólon de capacidades que padronizam ms = 01; 31: mc = 01; 31: sl =: cx =: fn = 35: ln = 32: bn = 32: SE = 36 com o RV e ne Capacidades booleanas omitidas (eu.e., falso). Os recursos suportados são os seguintes.
sl =
Substring sgr para linhas inteiras selecionadas (i.e., linhas correspondentes quando o -v a opção de linha de comando é omitida ou linhas não correspondentes quando -v é especificado). Se, no entanto, o booleano RV capacidade e o -v a opção de linha de comando são especificados, aplica-se a linhas correspondentes ao contexto em vez. O padrão está vazio (eu.e., o par de cores padrão do terminal).
cx =
Substring sgr para linhas de contexto inteiras (i.e., linhas não correspondentes quando o -v a opção de linha de comando é omitida ou linhas correspondentes quando -v é especificado). Se, no entanto, o booleano RV capacidade e o -v A opção de linha de comando são especificadas, aplica-se a linhas não correspondentes selecionadas em vez disso. O padrão está vazio (eu.e., o par de cores padrão do terminal).
RV
Valor booleano que reverte (swaps) os significados do sl = e cx = recursos quando o -v a opção de linha de comando é especificada. O padrão é falso (eu.e., a capacidade é omitida).
mt = 01; 31
SIGR Substring para correspondência de texto não vazio em qualquer linha correspondente (i.e., uma linha selecionada quando o -v a opção de linha de comando é omitida ou uma linha de contexto quando -v é especificado). Definir isso é equivalente a definir ambos ms = e mc = ao mesmo tempo para o mesmo valor. O padrão é um texto em negrito em primeiro plano sobre o fundo da linha atual.
ms = 01; 31
Substring SGR para correspondência de texto não vazio em uma linha selecionada. (Isso é usado apenas quando o -v a opção de linha de comando é omitida.) O efeito do sl = (ou cx = se RV) A capacidade permanece ativa quando isso entra em ação. O padrão é um texto em negrito em primeiro plano sobre o fundo da linha atual.
MC = 01; 31
Substring SGR para correspondência de texto não vazio em uma linha de contexto. (Isso é usado apenas quando o -v a opção de linha de comando é especificada.) O efeito do cx = (ou sl = se RV) A capacidade permanece ativa quando isso entra em ação. O padrão é um texto em negrito em primeiro plano sobre o fundo da linha atual.
fn = 35
SIGR Substring para nomes de arquivos Prefixando qualquer linha de conteúdo. O padrão é um texto magenta em primeiro plano sobre o fundo padrão do terminal.
ln = 32
SIGR Substring para números de linha Prefixando qualquer linha de conteúdo. O padrão é um texto verde em primeiro plano sobre o fundo padrão do terminal.
Bn = 32
Substring SGR para compensações de bytes Prefixando qualquer linha de conteúdo. O padrão é um texto verde em primeiro plano sobre o fundo padrão do terminal.
SE = 36
Substring SGR para separadores que são inseridos entre campos de linha selecionados (:), entre campos de linha de contexto, (-), e entre grupos de linhas adjacentes quando o contexto diferente de zero é especificado (-). O padrão é um texto ciano em primeiro plano sobre o fundo padrão do terminal.
ne
Valor booleano que impede a limpeza para o final da linha usando apagar na linha (el) para a direita (\\\ 33 [k) Cada vez que um item colorido termina. Isso é necessário nos terminais nos quais o EL não é suportado. De outra forma é útil nos terminais para os quais back_color_erase (BCE) A capacidade do Terminfo booleano não se aplica, quando as cores de destaque escolhidas não afetam o fundo, ou quando o EL é muito lento ou causa muita piscina. O padrão é falso (eu.e., a capacidade é omitida).

Observe que os recursos booleanos não têm =… papel. Eles são omitidos (eu.e., falso) por padrão e se torna verdadeiro quando especificado.

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 personagem. Esses valores de substring são inteiros em representação decimal e podem ser concatenados com semicolons. grep cuida da montagem do resultado em uma sequência completa de SGR (\\\ 33 [.. m). Valores comuns para concatenar incluem 1 para negrito, 4 para sublinhado, 5 para piscar, 7 para inverso, 39 Para a cor do primeiro plano padrão, 30 para 37 Para cores de primeiro plano, 90 para 97 Para as cores de primeiro plano do modo de 16 cores, 38; 5; 0 para 38; 5; 255 Para modos de 88 cores e 256 cores em primeiro plano, 49 Para uma cor de fundo padrão, 40 para 47 Para cores de fundo, 100 para 107 para cores de fundo do modo de 16 cores e 48; 5; 0 para 48; 5; 255 Para modos de 256 cores de 88 cor e cores de fundo.

Lc_all, LC_COLLATE, Lang
Essas variáveis ​​especificam o local para o LC_COLLATE categoria, que determina a sequência de coleta usada para interpretar expressões de alcance como [A-Z].
Lc_all, LC_CTYPE, Lang
Essas variáveis ​​especificam o local para o LC_CTYPE categoria, que determina o tipo de caractere, e.g., Quais personagens são espaço em branco.
Lc_all, LC_MESSAGES, Lang
Essas variáveis ​​especificam o local para o LC_MESSAGES categoria, que determina o idioma que grep usos para mensagens. O local padrão C usa mensagens inglesas americanas.
Posixly_correct
Se definido, grep se comporta como Posix.2 requer; de outra forma, grep se comporta mais como outros programas GNU. Posix.2 requer que as opções que seguem os nomes de arquivos sejam tratadas como nomes de arquivos; Por padrão, essas opções são permitidas na frente da lista de operando e são tratadas como opções. Além disso, Posix.2 exige que as opções não reconhecidas sejam diagnosticadas como 'ilegais', mas como elas não são realmente contra a lei, o inadimplência é diagnosticar como 'inválido'. Posixly_correct Também desativa _N_Gnu_nonoption_argv_flags_, Descrito abaixo.
_N_Gnu_nonoption_argv_flags_
(Aqui N é grepID do processo numérico.) Se o euo caráter desse ambiente, o valor da variável é 1, Não considere o euo operando de grep para ser uma opção, mesmo que pareça ser um. Um shell pode colocar essa variável no ambiente para cada comando que ele é executado, especificando quais operandos são os resultados da expansão do nome do arquivo Wildcard e, portanto, não devem ser tratados como opções. Este comportamento está disponível apenas com a biblioteca GNU C e somente quando Posixly_correct não está definido.

Status de saída

Normalmente, o status de saída é 0 se linhas selecionadas forem encontradas e 1 caso contrário. Mas o status de saída é 2 se ocorreu um erro, a menos que o -q ou -quieto ou -silencioso a opção é usada e uma linha selecionada é encontrada. Observe, no entanto, que Posix apenas exige, para programas como grep, cmp, e Dif, que o status de saída em caso de erro seja maior que 1; Portanto, é aconselhável, em prol da portabilidade, usar a lógica que testes para esta condição geral, em vez de igualdade estrita com 2.

direito autoral

Copyright © 1998, 1999, 2000, 2002, 2005 Free Software Foundation, Inc.

Este é um software livre; Veja a fonte para copiar condições. Não há garantia; Nem mesmo para comercialização ou aptidão para um propósito específico.

Insetos

Relatórios de bugs

Relatórios por e -mail para bugs para <[email protected]>, uma lista de discussão cuja página da web é <http: // listas.gnu.org/Mailman/listinfo/Bug-Grep >. grepSavannah Bug Tracker está localizado em <http: // savannah.gnu.org/bugs/?grupo = grep >.

Bugs conhecidos

Grandes contagens de repetição no n,m construto pode causar grep Para usar muita memória. Além disso, certas outras expressões regulares obscuras requerem tempo e espaço exponenciais e podem causar grep Para ficar sem memória.

Tutoriais do Linux relacionados:

  • Expressões regulares do Python com exemplos
  • Localize vs Find: Qual é a diferença
  • Arquivos de configuração do Linux: os 30 primeiros mais importantes
  • Como montar a imagem ISO no Linux
  • Como comparar arquivos usando diff
  • Como grep corretamente para texto em scripts de bash
  • Mint 20: Melhor que o Ubuntu e o Microsoft Windows?
  • Mastering Bash Script Loops
  • Como adicionar/remover o usuário no manjaro linux
  • Xargs com vários threads com exemplos