[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Shell ou Sed?
From: |
Fábio Batista |
Subject: |
Re: [shell-script] Shell ou Sed? |
Date: |
Wed, 11 May 2005 10:18:34 -0300 |
Tente algo como:
grep -e "^.{64}sl" arq.txt > arq_SL.txt
grep -e "^.{64}sb" arq.txt > arq_SB.txt
--
Fábio David Batista
address@hidden
http://nerd-o-matic.blogspot.com
On 5/10/05, Lourival <address@hidden> wrote:
> Boa tarde a todos,
> tenho um arquivo tipo arq.txt com vários registros (o arquivo pode ter
> um número arbitrário de registros) de 150 bytes cada registro e preciso
> selecionar registros baseados no conteudo das posições 65 e 66.
> Se nestas posições estiverem presentes a string "sl", enviar este
> registro para outro arquivo, por exemplo, arq_SL.txt; se nas posições 65
> e 66 estiverem presentes a string "sb" enviar este registro para outro
> arquivo, por exemplo arq_SB.txt .
> A forma mais óbvia para mim de se fazer isto é com um "case".
>
> Leio cada linha em uma variável $LINHA e em outra variavel ($ID) coloco:
> ID = echo "grep arq.txt| cut -c65-66"
> com o "case":
> case $ID in
> sl) echo $LINHA >> arq_SL.txt
> sb) echo $LINHA >> arq_SB.txt
>
> e assim por diante!
> A minha dúvida é a seguinte: esta é a forma mais rápida de se fazer isto?
> É possível fazer o mesmo com "sed" ou "awk" de forma mais rápida?
> (Acho que não é OFF-TOPIC pois isto tudo (shell, sed e awk) está junto
> no livro do Julio Cezar :-))) )
>
> Desde já agradeço e aguardo qualquer colaboração
> Forte abraço a todos
> Lourival
>