[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