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: Tiago Peczenyj
Subject: Re: [shell-script] wc -l contando linhas errado?
Date: Wed, 6 Feb 2013 19:13:32 +0100

O que importa é que resolve o seu problema. ;-)

2013/2/6 Alfredo Casanova <address@hidden>

> sei que poderia fazer de mil maneiras mais simples, mas aproveitei pra
> aprender mais sobre o IFS, sempre tive dificuldades hehehe
>
>
> 2013/2/6 Alfredo Casanova <address@hidden>
>
> > 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
> >
>
>
>
> --
> []'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]



reply via email to

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