Olá Jorge,

A solução anterior cobre o caso de palavras com um prefixo comum.
Porém, caso as palavras sejam não tenham um prefixo comum, você pode usar
uma EXPREG  com agrupamento e "ou":

ER="(palavra1|palavra2|palavra3|palavra4)"
grep -vE "$ER" $ARQUIVO

outro exemplo:

ER="(bash|awk|sed|perl|python)"
grep -vE "$ER" $ARQUIVO


Att,
Sergio.



Em 24/12/06, Jorge Barros de Abreu <[EMAIL PROTECTED]> escreveu:
>
>   Olá.
>
> Atualmente tenho um trecho de código que está dessa forma:
>
> LIST="palavra1 palavra2 palavra3 palavra4"
> cat $ARQUIVO |\
> grep -v "palavra1" |\
> grep -v "palavra2" |\
> grep -v "palavra3" |\
> grep -v "palavra4" > relatorio.txt
>
> Eu gostaria de fazer algo assim:
> LIST="palavra1 palavra2 palavra3 palavra4"
> cat $ARQUIVO | for i in LIST do grep -v $i done > relatorio.txt
>
> O objetivo da mudança é restringir a alteração a um lugar somente. Da
> forma
> como está atualmente em caso de alteração tenho de modificar em dois
> lugares
> ficando a possibilidade de erro aumentada.
>
> Qual a forma correta de fazer isso?
>
> Obrigado.
> --
> Data Estelar 2454093.741690
> http://usr.solar.com.br/~ficmatin <http://usr.solar.com.br/%7Eficmatin>
> Desejo-lhe Paz, Vida Longa e Prosperidade.
> São Bem Vindas Mensagens no Formato Texto Genérico com Acentos.
>
>  
>


[As partes desta mensagem que não continham texto foram removidas]

Responder a