31.07.2013 Views

Sistema Operacional Linux - Portal do Professor

Sistema Operacional Linux - Portal do Professor

Sistema Operacional Linux - Portal do Professor

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Cadernos de Informática<br />

74<br />

CURSO DE INTRODUÇÃO AO SISTEMA OPERACIONAL LINUX<br />

Secretaria de Esta<strong>do</strong> de Educação MG<br />

grep<br />

O grep é um membro de uma família de utilitários que pesquisa palavras ou padrões<br />

dentro de arquivos. O nome grep vem de um coman<strong>do</strong> <strong>do</strong> editor vi:<br />

g/re/p<br />

que é traduzi<strong>do</strong> como:<br />

global<br />

regular expression<br />

print<br />

ou seja, pesquisa no arquivo to<strong>do</strong>, por uma Expressão Regular, e imprima as linhas<br />

onde ela foi encontrada.<br />

Os outros membros da família são:<br />

egrep egrep extended grep que suporta um conjunto mais sofistica<strong>do</strong> de expressões regulares<br />

fgrep fgrep fixed grep que pesquisa por cadeias de caracteres (strings) sem meta-caracteres<br />

Existe um outro grep, agrep, que não faz parte <strong>do</strong>s utilitários distribuí<strong>do</strong>s no Unix. Ele<br />

é de implementação muito mais recente. O a inicial quer dizer aproxima<strong>do</strong>. Ao contrário<br />

<strong>do</strong>s outros o agrep tolera erros entre a expressão regular e o texto.<br />

Opções<br />

As principais opções <strong>do</strong>s programas grep, egrep e fgrep são:<br />

-E -E interpreta a expressão regular como o egrep faria.<br />

-F -F interpreta a expressão regular como uma lista de strings constantes, como o fgrep faria.<br />

-G -G mo<strong>do</strong> grep, apenas expressões regulares simples.<br />

-h -h não imprime o nome <strong>do</strong> arquivo onde o padrão foi encontra<strong>do</strong>.<br />

-i -i ignora a diferença entre MAIÚSCULAS e minúsculas.<br />

-l -l lista apenas o nome <strong>do</strong> arquivo, sem exibir a linha onde o padrão foi encontra<strong>do</strong>.<br />

-q -q como quieto. Não imprime nada, apenas informa via codigo de término (ver<br />

shell) se o padrão foi encontra<strong>do</strong> ou não.<br />

-v -v inverte a seleção das linhas, ou seja, imprime as linhas que não possuem o padrão.<br />

a versão <strong>do</strong> grep disponível no <strong>Linux</strong> é a <strong>do</strong> Projeto GNU. Esta versão se comporta como<br />

o egrep.<br />

O programa fgrep possui algumas peculiaridades mas não teremos tempo de tratá-las.<br />

Expressão regular<br />

Uma expressão regular é uma forma compacta de definir algumas seqüencias de caracteres.<br />

Nós dizemos que uma expressão regular “casa” (ou “bate”) com um string quan<strong>do</strong> o<br />

string satisfaz a descrição.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!