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

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

Re: [shell-script] wc -l contando linhas errado?


From: Alfredo Casanova
Subject: Re: [shell-script] wc -l contando linhas errado?
Date: Wed, 6 Feb 2013 16:09:43 -0200

Morreu
é uma falha no sistema de onde esse CSV é extraído... eu usava dois
determinados campos - que são mandatórios - para usar como índice, e em 3
dessas linhas um desses  campos aparece em branco.

para descobrir o erro sem percorrer ele todo no "olhômetro", fiz o seguinte
script:

conta(){
oIFS="$IFS"; IFS=, ; set -- $1 ; IFS="$oIFS"
        [ $# -ne 2 ] && echo "$i: faltando argumentos"
}

for i in $(cat 06_02_2013_11_17_33_CSV.CSV | cut -f9,4 -d, | cut -f1 -d" ")
do
conta $i
done

não me julguem! :)



2013/2/6 Tiago Peczenyj <address@hidden>

> **
>
>
> Alfredo.
>
> faça isto:
>
> sed 's/\(...\).*/\1/' arquivo> novo
>
> e faça os testes com o novo. se continuar dando problema coloque este
> arquivo em um gist ou pastebin da vida.
>
> perceba que estou pegando apenas os 3 primeiros caracteres de cada linha,
> portanto o conteudo do arquivo não sera de conhecimento publico.
>
> 2013/2/6 Alfredo Casanova address@hidden>
>
>
> > verifiquei tudo isso, não existe nenhum tipo de linha em branco...
> > quando uso o nl ou o cat -n todas as linhas mostradas são de fato linhas
> do
> > arquivo
> >
> >
> > 2013/2/6 Alysson Gonçalves de Azevedo address@hidden>
> >
> > > **
>
> > >
> > >
> > > Me lembro vagamente de que o cat coloca um "enter" a mais no final do
> > > arquivo.
> > > Só não lembro onde li isso ou porque penso isso.
> > >
> > > Eu abriria esse arquivo num editor de texto e olharia qual indice da
> > última
> > > linha (ou usaria o nl).
> > > Se for 554, considere que o último enter é do cat e que está sendo
> > > contabilizado quando você joga a saída do arquivo pra algum outro
> > programa
> > > via pipe.
> > >
> > > E se essa minha opnião tiver errada, por favor, corrija-me.
> > >
> > > Alysson Gonçalves de Azevedo - (11) 984 917 730
> > >
> > > "É curioso como as pessoas ficam confusas quando a frase não terminam
> do
> > > jeito que elas periquito."
> > >
> > > Em 6 de fevereiro de 2013 14:25, Tiago Peczenyj
> > > address@hidden>escreveu:
> > >
> > >
> > > > Sem ver o arquivo não consigo imaginar o que houve.
> > > >
> > > > Agora eu imaginaria que tem um caracter \r em algum lugar.
> > > >
> > > > 2013/2/6 Alfredo Casanova address@hidden>
> > > >
> > > > > **
> > > > >
> > > > >
> > > > > Seguinte, fiz um script que recebe um CSV, faz uns tratamentos e
> gera
> > > um
> > > > > gráfico usando o google chart api em um html
> > > > >
> > > > > sempre funcionou certinho, mas hoje tive um probleminha
> > > > > O sistema contabilizou 551 registros, mas deveria contar 554, já q
> o
> > > > > arquivo tem 555 linhas e a primeira é descartada.
> > > > >
> > > > > Não consegui identificar o problema
> > > > >
> > > > > $ file 06_02_2013_11_17_33_CSV.CSV
> > > > > 06_02_2013_11_17_33_CSV.CSV: UTF-8 Unicode text, with very long
> lines
> > > > >
> > > > > $ cat -n 06_02_2013_11_17_33_CSV.CSV | tail -1 | cut -f1
> > > > > 555
> > > > >
> > > > > $ wc -l 06_02_2013_11_17_33_CSV.CSV
> > > > > 554 06_02_2013_11_17_33_CSV.CSV
> > > > >
> > > > > e o mais estranho:
> > > > > se eu retirar as "linhas em branco", ele me dá uma linha a mais!
> > > > >
> > > > > $ cat 06_02_2013_11_17_33_CSV.CSV | grep -v ^$ | wc -l
> > > > > 555
> > > > >
> > > > > $ cat 06_02_2013_11_17_33_CSV.CSV | grep ^$ | wc -l
> > > > > 0
> > > > >
> > > > > alguém tem alguma ideia pra ajudar a rastrear o problema?
> > > > >
> > > > > --
> > > > > []'s
> > > > > Alfredo Casanova
> > > > > Linux User #228230
> > > > > msn: address@hidden
> > > > > tel: +55 61 9655 9619
> > > > >
> > > > > [As partes desta mensagem que não continham texto foram removidas]
> > > > >
> > > > >
> > > > >
> > > >
> > > >
> > > >
> > > > --
> > > > Tiago B. Peczenyj
> > > > Linux User #405772
> > > >
> > > > http://about.me/peczenyj
> > > >
> > > >
> > > > [As partes desta mensagem que não continham texto foram removidas]
> > > >
> > > >
> > > >
> > > > ------------------------------------
> > > >
> > > > ----------------------------------------------------------
> > > > 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
> > > >
> > > >
> > > >
> > >
> > > [As partes desta mensagem que não continham texto foram removidas]
> > >
> > >
> > >
> >
> >
> >
> > --
> > []'s
> > Alfredo Casanova
> > Linux User #228230
> > msn: address@hidden
> > tel: +55 61 9655 9619
> >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
> >
> > ------------------------------------
> >
> > ----------------------------------------------------------
> > 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
> >
> >
> >
>
> --
> Tiago B. Peczenyj
> Linux User #405772
>
> http://about.me/peczenyj
>
> [As partes desta mensagem que não continham texto foram removidas]
>
>  
>



-- 
[]'s
Alfredo Casanova
Linux User #228230
msn: address@hidden
tel: +55 61 9655 9619


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



reply via email to

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