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

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

Re: [shell-script] Ajuda


From: Tiago Barcellos Peczenyj
Subject: Re: [shell-script] Ajuda
Date: Sat, 29 Oct 2005 14:02:54 -0200

opa

eu não seo que regra vc usa na terceira coluna.
eu pensei assim: se tiver 000200 na frente, tira isso tudo, caso
contrario, se tiver 000, tira da frente,

po qual a diferença entre 0002000044 e 000206 ? po em um tem que
sobrar 44 e no outro 206... vai saber...

bom ficou assim

awk '{sub ("000200","",$3); sub("000","",$3) ; print $1" "$2"
"int($3)" "$4}' arquivo

usei:
int(x) - "trunca" o valor de x, desprezando a parte decimal.
gsub(regexp,valor,string) procura uma ocorrência da expressão regexp
em string, e substitui por valor.

a regra pode ser meio estranha mas foi o que pude pensar. deve ter uma
forma melhor.
Em 29/10/05, Mauricy Maiorino <address@hidden> escreveu:
>     Pessoal
>
>  Tenho a seguinte entrada de arquivo:
>
>  funcconv 99102000000000  296 funcamp
>  funcconv 99102000000000  262 funcamp
>  funcconv 99102000000000  164 funcamp
>  penteado 09000000000000  0002000044 ifch
>  novelli 09000000000000  39 ifch
>  csbarra 09000000000000  000206 ifch
>
>
>  O que preciso é que quando o terceiro campo for do tipo "0002000044" ou
>  do tipo "000206" que ele de um "cut" e me deixe somente os numeros
>  inteiros. A saída precisaria ficar assim:
>
>  funcconv 99102000000000  296 funcamp
>  funcconv 99102000000000  262 funcamp
>  funcconv 99102000000000  164 funcamp
>  penteado 09000000000000   44 ifch
>  novelli 09000000000000  39 ifch
>  csbarra 09000000000000  206 ifch
>
>  Já tentei com awk e cut mas sem sucesso. Se usar o sed, não dá, pois a
>  numeração deste campo pode variar "antes" do numero inteiro, ou seja os
>  3 ou 4 primeiros digitos deste campo.
>
>  Alguem pode me ajudar??
>
>  Obrigado
>
>  Mauricy
>
>
>   ---------------------------------------------------------------------
>  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
>  ---------------------------------------------------------------------
>
>
>
>
>          Yahoo! Grupos, um serviço oferecido por:
>
> PUBLICIDADE
>
>    ________________________________
 Links do Yahoo! Grupos
>
>
> Para visitar o site do seu grupo na web, acesse:
> http://br.groups.yahoo.com/group/shell-script/
>
> Para sair deste grupo, envie um e-mail para:
> address@hidden
>
> O uso que você faz do Yahoo! Grupos está sujeito aos Termos do Serviço do 
> Yahoo!.


reply via email to

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