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

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

Re: [shell-script] Ajuda


From: Alexandre Vieira Santos
Subject: Re: [shell-script] Ajuda
Date: Sat, 29 Oct 2005 15:37:26 -0200
User-agent: Mozilla Thunderbird 1.0.6 (X11/20050716)


acho que isso serve

+++++++++++++++++++++++++++++++++++++++++++++++++++++++
#!/bin/bash
/bin/gawk 'BEGIN { OFS=" " }
{
      b = gensub(/.*(......)$/, "\\1","g" , $3 )
      c = gensub(/0+(.*)$/, "\\1","g" , b)
      print $1,$2,c,$4
}' "$*"
+++++++++++++++++++++++++++++++++++++++++++++++++++++++

b salva os últimos 6 caracteres, e c remove os zeros da frente.



Mauricy Maiorino wrote:

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
      <mailto:address@hidden?subject=Unsubscribe>
* O uso que você faz do Yahoo! Grupos está sujeito aos Termos do
      Serviço do Yahoo! <http://br.yahoo.com/info/utos.html>.





--

__

Jones

Alexandre Vieira Santos
mailto:address@hidden
mobile: +55 11 8142 2481
.
.





reply via email to

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