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

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

Re: [shell-script] Como saber quantas colunas tem a maior linha de um ar


From: jimmy
Subject: Re: [shell-script] Como saber quantas colunas tem a maior linha de um arquivo?
Date: Mon, 22 Dec 2008 11:01:02 -0200
User-agent: Mutt/1.4.2.3i

porque você não armazena o valor em uma variável sempre que o novo valor
for maior que o anterior?

while read LINE; do
  llen=`echo "$LINE" | wc -m`
  if [ $llen -gt $nlen ]; then
    nlen=$llen
  fi
done < arquivo

ou em awk:
 
awk 'length($0)>len{len=length($0)}END{print len}' arquivo


On Mon, Dec 22, 2008 at 10:31:47AM -0200, Breno Moiana wrote:
> Valeu pela resposta imediata, Jimmy!
> 
> Aaah, eu nao tenho wc -L, pena...   (HP-UX)
> 
> O que estou usando é muito feio, mas funciona:
> 
> 
> $ cat sample
> 12345678
> 123456789012345
> 12345678901234
> 12345678901234567890123
> 123
> 12345
> 1234567
> 1
> 
> $ cat sample | while read LINE; do echo "$LINE" | wc -c;done
> 9
> 16
> 15
> 24
> 4
> 6
> 8
> 2
> 
> $ cat sample | while read LINE; do echo "$LINE" | wc -c;done  | sort
> -n | tail -n 1
> 24
> 
> 
> (lembrando que o newline conta como caracter, entao para o que eu
> quero, devo substituir 1 do numero)
> 
> Mesmo sem o wc -L deve dar pra ficar mais bonito. É só curiosidade
> mesmo, funcionando está..
> 
> abraço!
> 
> Moiana.
> --
> 
> 
> 
> 
> 2008/12/22 jimmy <address@hidden>:
> > On Mon, Dec 22, 2008 at 10:19:38AM -0200, Breno Moiana wrote:
> >> Bom dia, pessoal.
> >>
> >> Surgiu uma dúvida aqui... Eu preciso saber qual é o tamanho da maior
> >> linha de um arquivo (quantas colunas ela tem).
> >>
> >> Tem algum one-liner simples e elegante para isso? Todas as buscas que
> >> tentei para limitar o escopo do problema acabam dando resultados
> >> demais.
> >>
> >> Eu pensei em um while lendo o arquivo linha a linha, wc pra contar os
> >> chars da linha, guardando o maior. Mas me parece muito rolo pra pouca
> >> coisa, alguém sabe de um jeito mais "bonito" ? Alguma solução mais
> >> elegante por aí?
> >>
> >> Obrigado, abraço!
> >>
> >> Moiana.
> >> --
> >>
> >> ------------------------------------
> >
> > saudações breno;
> >
> > wc -L arquivo
> > ou
> > cat arquivo | wc -L
> >
> > 
> 
> ------------------------------------


reply via email to

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