Em Qui 20 Mai 2004 11:39, Danilo Vasconcelos de O. e Silva escreveu:
> Senhores, e qual a diferen�a de usar o grep para o egrep?
O egrep implementa express�es regulares "estendidas", onde uma s�rie de
caracteres adquire significado especial, ou seja, viram operadores.
Nas express�es regulares simples, esses mesmos caracteres t�m de ser
escapeados para serem operadores. Vide exemplos:
# filtra linhas com uma ou mais ocorr�ncias seguidas da string "bo"
cat arquivo.txt | grep '\(bo\)\+'
cat arquivo.txt | egrep '(bo)+'
# filtra linhas com 2 ou mais ocorr�ncias seguidas da string "bo"
cat teste.txt | grep '\(bo\)\{2\}'
cat teste.txt | egrep '(bo){2}'
Para express�es regulares complexas, a vers�o do egrep � sem d�vida mais
leg�vel. O reverso da moeda � que, se quisermos o caractere literal, "+" por
exemplo, � preciso escape�-lo no egrep, enquanto isso n�o era necess�rio no
grep:
# filtra linhas com a string literal "o+"
cat arquivo.txt | grep 'o+'
cat arquivo.txt | egrep 'o\+'
---------------------------------------------------------------------------
Esta lista � patrocinada pela Conectiva S.A. Visite http://www.conectiva.com.br
Arquivo: http://bazar2.conectiva.com.br/mailman/listinfo/linux-br
Regras de utiliza��o da lista: http://linux-br.conectiva.com.br
FAQ: http://www.zago.eti.br/menu.html