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

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

Re: RES: RES: [shell-script] Maior linha


From: fpasa
Subject: Re: RES: RES: [shell-script] Maior linha
Date: Thu, 28 Oct 2004 19:08:45 -0000
User-agent: eGroups-EW/0.82

Julio,

executei a solução em alguns arquivos grandes (cerca de 300.000 
linhas) e levou cerca de 1,5 hora .
Vc tem alguma idéia para otimizar isso ?

abraço,
Fabiano


--- Em address@hidden, Julio Cezar Neves - 
DATAPREVRJ <julio.neves@p...> escreveu
> Aê Fabiano,
> Olha o teste que fiz:
> 
> Prompt> Linha="123   "
> Prompt> echo ${#Linha}
> 6
> 
> Conforme era esperado. Mas em todo caso experimente fazer:
> 
> Max=0
> while read Linha
> do
>     [ $(expr length "$Linha") -gt $Max ] && Max=$(expr 
length "$Linha")
> done < Arquivo
> echo $Max
> 
> [ ]s,
> Julio Cezar Neves
> - Gerente do Programa de Software Livre -
> Tel:+55 21 2528-7070 / +55 21 8112-9988
> Fax: +55 21 2528-7646
> mailto:julio.neves@p...
> 
> 
> | -----Mensagem original-----
> | De: fpasa [mailto:shell.script@t...]
> | Enviada em: quinta-feira, 21 de outubro de 2004 17:38
> | Para: address@hidden
> | Assunto: Re: RES: [shell-script] Maior linha
> | 
> | 
> | 
> | 
> | Julio, na verdade não funcionou 100% . Quando existem espaços em 
> | branco no final da linha ele não conta.
> | 
> | Vc tem alguma idéia ?
> | 
> | abraço,
> | Fabiano
> | 
> | --- Em address@hidden, "fpasa" 
<shell.script@t...> 
> | escreveu
> | > 
> | > Julio, funcionou blz.
> | > 
> | > Valeu pela ajuda.
> | > 
> | > abraço,
> | > Fabiano
> | > 
> | > 
> | > --- Em address@hidden, Julio Cezar Neves - 
> | > DATAPREVRJ <julio.neves@p...> escreveu
> | > > Aê Fabiano,
> | > > sem testar:
> | > > 
> | > > Max=0
> | > > while read Linha
> | > > do
> | > >     [ ${#Linha} -gt $Max ] && Max=${#Linha}
> | > > done < Arquivo
> | > > echo $Max
> | > > 
> | > > A construção ${#Linha} é um parameter substitution que 
devolve o 
> | > tamanho da
> | > > variavel Linha. Caso vc esteja usando Bourne Shell, substitua-
a 
> | por 
> | > expr
> | > > length $Linha
> | > > 
> | > > [ ]s,
> | > > Julio Cezar Neves
> | > > - Gerente do Programa de Software Livre -
> | > > Tel:+55 21 2528-7070 / +55 21 8112-9988
> | > > Fax: +55 21 2528-7646
> | > > mailto:julio.neves@p...
> | > > 
> | > > 
> | > > | -----Mensagem original-----
> | > > | De: fpasa [mailto:shell.script@t...]
> | > > | Enviada em: quinta-feira, 21 de outubro de 2004 16:58
> | > > | Para: address@hidden
> | > > | Assunto: [shell-script] Maior linha
> | > > | 
> | > > | 
> | > > | 
> | > > | 
> | > > | Pessoal,
> | > > | 
> | > > | como faço para percorrer um arquivo e verificar qual o 
tamanho 
> | da 
> | > > | maior linha do mesmo, incluindo espaços em branco ?
> | > > | 
> | > > | Exemplo:
> | > > | aaaaaaaaaaaaaaaaaa
> | > > | aaaaaa
> | > > | aaaaaaaaaaa
> | > > | aaaaaaaaaaaaaaaaaaaaa
> | > > | aaaaaaaaaaaaa
> | > > | aaaa
> | > > | 
> | > > | Neste caso a 4ª linha possui 21 posições, logo 21 é a maior 
> | > > | quantidade de posições.
> | > > | 
> | > > | 
> | > > | abraços,
> | > > | Fabiano
> | > > | 
> | > > | 
> | > > | 
> | > > | 
> | > > | 
> | > > | 
> | > > | 
> | > > | 
> | > > | 
> | > > | 
> | > > | ------------------------------------------------------------
----
> | --
> | > ---
> | > > | 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
> | > > --------------------------------------------------------------
----
> | --
> | > -
> | > >  
> | > > Links do Yahoo! Grupos
> | 
> | 
> | 
> | 
> | 
> | ------------------------------------------------------------------
---
> | 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
> --------------------------------------------------------------------
-
>  
> Links do Yahoo! Grupos




reply via email to

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