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

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

Re: [shell-script] sequencia de numeros


From: Humberto Pereira
Subject: Re: [shell-script] sequencia de numeros
Date: Tue, 17 Jan 2006 14:11:32 -0200
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.7.12) Gecko/20050923 Debian/1.7.12-0ubuntu05.04

Boa tarde,

        suponhemos q na variavel SAIDA voce tenha o seu resultado.
Voce pode fazer algo do tipo

# quebra de linha eh o nosso separador agora
IFS=$'\n'

#sempre comeca com 00
next="00"

# para cada linha da saida, faca...
while line in $SAIDA; do
        # pega o tipo
        type=`echo $line | awk ' { print $2 } '`

        # o proximo do anterior eh diferente do atual?
        [ "$type" != "$next" ] && echo "Error: $line"

        case "$type" in
                # se o tipo for 00, o proximo eh 01, certo?
                "00") next="01"
                ;;
                # se o tipo for 01, o proximo eh 99.
                "01") next="99"
                ;;
                # ultimo, o proximo soh pode ser um 00
                "99") next="00"
                ;;
                # tipo nao cadastrado
                *) echo "Error: $line"
                ;;
        esac
done


Acredito q isso resolva.

[]s
Humberto Pereira


lferreir1 wrote:
> Boa tarde galera!
> 
> Seguinte, tenho um arquivo de saída com o seguinte resultado do 
> comando #cat -n arquivo | cut -c1-9 | uniq -f1
>      1  00
>      2  01
>    260  99
>    261  00
>    262  01
>    268  99
>    269  00
>    270  01
>    273  99
>    274  00
>    275  01
>    294  99
>   ........
> 
> Onde a primeira coluna significa o número da linha do arquivo e a 
> segunda coluna são os dados do tipo 00=header 01=detalhes 99=trailler
> Preciso checar neste arquivo se não está faltando algum registro 
> nesta sequência, como exemplo um 99 antes do 01. No exemplo acima 
> está tudo OK.
> 
> Grato pela ajuda.
> Luiz
> 
> 
> 
> 
> 
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de programação, como 
> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio 
> aviso.
> ---------------------------------------------------------------------
> Sair da lista: address@hidden
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em 
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
> Servidor Newsgroup da lista: news.gmane.org
> Grupo: gmane.org.user-groups.programming.shell.brazil
> 
>  
> Links do Yahoo! Grupos
> 
> 
> 
> 
>  
> 
> 



reply via email to

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