shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] ER


From: Tiago Barcellos Peczenyj
Subject: Re: [shell-script] ER
Date: Wed, 6 Dec 2006 15:10:41 -0200

Em sed vc tem estas possibilidades:

# imprime somente as linhas que se encaixam na expressão regular
# (emula o "grep")
sed -n '/regexp/p'           # método 1
sed '/regexp/!d'             # método 2

# imprime somente as linhas que NÃO se encaixam na regexp (emula o "grep -v")
sed -n '/regexp/!p'          # método 1, corresponde ao descrito acima
sed '/regexp/d'              # método 2, sintaxe mais simples

entretanto, se vc quer uma ER que case com tudo MENOS uma dada
expressão, acho que isso não é suportado pelas ERs normais. Ate por
que vc pode inverter a lógica do seu programa para isso.

On 12/6/06, Wagner Brasileiro <address@hidden> wrote:






Gerei um arquivo com a listagem de vários subdiretórios onde tenho arquivos MP3 gravados, depois de ter tirado linhas com 
caracteres do tipo: ".", "..""./" e coisas do tipo ainda haviam linhas como: linhas em 
branco e outros nomes de diretórios ao qual não queria que houvessem pois precisarei numerar essas linhas e somente as 
que forem referentes a arquivos para que não fique discrepante a listagem. A seguinte ER abaixo aparentemente funcionou: 
sed '/[mM][pP][3]/!d' arq_origem>arq_destino, porém gostaria de saber como faria para negar a expressão e não o 
comando de deletar, já tentei: sed '/(^[mM][pP][3])/!d' arq_origem>arq_destino, sed '/[^mM][pP][3]/!d' 
arq_origem>arq_destino e ainda numa tentativa já meia desesperada: sed '/[^mM][^pP][^3]/!d' arq_origem>arq_destino 
e simplesmente nada acontecia. Gostaria de saber como faço para negar uma ER inteira, alguém pode me explicar?

 Obrigado

                
 ---------------------------------
  Yahoo! Search
  Música para ver e ouvir: You're Beautiful, do James Blunt

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




--
Tiago B Peczenyj
Linux User #405772

# cd /pub
# more beer


reply via email to

[Prev in Thread] Current Thread [Next in Thread]