[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] grep ou sed
From: |
Adam Victor Brandizzi |
Subject: |
Re: [shell-script] grep ou sed |
Date: |
Mon, 7 Mar 2005 19:28:26 -0300 (ART) |
--- Eliphas Levy Theodoro <address@hidden>
> Olá Luiz,
>
> Não entendi bem o padrão que você deseja. Pelo
> que parece você quer
> todas as linhas ímpares (começa em UM), e a
> última. É isso? Se não,
> explica de novo pra gente.
>
> Caso o arquivo tiver número de linhas par, esse
> sed vai te dar as
> linhas pares do arquivo:
> $ sed -n '1~2p' arq.log
>
> Caso for ímpar, esse outro vai dar as linhas
> pares, e a última linha:
> $ sed -n '1~2p;$p' arq.log
>
> Você pode checar se é par ou ímpar antes, com o
> wc:
>
> #!/bin/bash
> if wc -l < arq.log | grep -q "[02468]$"; then
> sed -n '1~2p' arq.log
> else
> sed -n '1~2p;$p' arq.log
> fi
Bom! A primeira solução não é muito boa porque
repetiria a última linha se ela também fosse
ímpar, e a segunda ainda evita isto, mas há como
evitar chamadas ao wc, ao if e ao grep:
sed -n '1~2{p,d};$p' arq.log
Neste caso, se a linha for ímpar, ele imprime e
apaga o conteúdo do espaço de comparação, de modo
que, se o segundo comando ($p) for executado, não
haverá mais linha a ser apagada. É um pouco mais
eficiente - mas acho que escrevi isto mais por
ser um viciado em sed :D, já que nem sabemos ao
certo qual a saída esperada...
=====
'()
Adam Victor Nazareth Brandizzi
Estudante de Ciência da Computação - UnB
e-mail: address@hidden
alternativa: address@hidden
ICQ: 168537710
__________________________________________________
Converse com seus amigos em tempo real com o Yahoo! Messenger
http://br.download.yahoo.com/messenger/
- grep ou sed, lferreir1, 2005/03/07
- Re: [shell-script] grep ou sed, Eliphas Levy Theodoro, 2005/03/07
- Re: [shell-script] grep ou sed,
Adam Victor Brandizzi <=
- Re: [shell-script] grep ou sed - melhorado, Eliphas Levy Theodoro, 2005/03/08
- Re: grep ou sed - melhorado, lferreir1, 2005/03/08
- sed - dúvida parte 2, lferreir1, 2005/03/15
- Re: [shell-script] sed - dúvida parte 2, SuSE List, 2005/03/15
- Re: sed - dúvida parte 2, lferreir1, 2005/03/16
- Re: [shell-script] Re: sed - dúvida parte 2, SuSE List, 2005/03/16