Funcionou Perfeitamente!
E pensar que perdi o sono lendo o man do cut, meu deus que desperdícil não ter respeitado o awk do Kernighan & cia, não vou tirar seus créditos, vou manter sua engine como está (com seu nome como autor) e a chamarei de dentro de meu script mestre (awk -f scrawk entrada.dat), estou muito grato por ter me animado em relação a programação de shellscript.


>Mensagem: 12       
>     Data: Thu, 11 May 2006 00:08:35 -0300
>       De: Fabiano Caixeta Duarte <[EMAIL PROTECTED]>
>  Assunto: Re: Formatação de arquivo orientado a colunas (cut)
>
>-----BEGIN PGP SIGNED MESSAGE-----
>Hash: SHA1
>
>Salvador (da Pátria?),
>
>Em bash puro, só nosso amigo Júlio :) ( de preferência um one-liner )
>
>Em awk arrisquei um primeiro rascunho. Utilize o manual do awk (man awk)
>para entender o que eu fiz. Em caso de dúvidas, é só perguntar que eu
>esclarecerei.
>
>Detalhe importante: o script a seguir não trata a questão das linhas
>consecutivas contendo apenas descrição, conforme exemplo a seguir (fica
>para a segunda versão do script):
>>                 PG OSVALDO REF      FRETE CFE
>>                 RECIBO
>
>Outra coisa, a construção /[0-9/]{10}/, ou seja, utilizando
>quantificadores "{}", insistiu em não funcionar aqui em casa... preciso
>descobrir por que. Por isto a ER meio troncha na linha 17.
>
>Divirta-se ;)
>
>##########
># Script #
>##########
>
>#!/usr/bin/awk -f
>
>BEGIN {
>  FIELDWIDTHS="16 20 10 5 13 15"
>}
>
>function trim(str){
>  gsub(/^[ ]+/,"",str)
>  gsub(/[ ]+$/,"",str)
>  return str
>}
>
>$1 ~ /^[^ ]/ {
>  cod=$1
>  gsub(/[ ]/,";",cod)
>}
>{
>  if ($3 ~ /[0-3][0-9][/][0-1][0-9][/][0-9]/) {
>    desc=$2
>    data=""> >    trans=trim($4)
>    negativo=trim($5)
>    positivo=trim($6)
>  }
>  else {
>      $1=""
>      print cod,desc,data,trans" +"$0";"negativo";"positivo
>  }
>}
>
>Abraços!
>
>Fabiano Caixeta Duarte
>Consultor em soluções para Redes de Computadores
>Linux User #195299
>Ribeirão Preto - SP






----------------------------------------
Salvador S. Scardua
Departamento de TI
Programador Junior
Pianna Com. Imp. Export. Ltda
27-3373 - 7527
[EMAIL PROTECTED]
[EMAIL PROTECTED]
---------------------------------------


[As partes desta mensagem que não continham texto foram removidas]



---------------------------------------------------------------------
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: [EMAIL PROTECTED]
---------------------------------------------------------------------
Esta lista é moderada de acordo com o previsto em http://www.listas-discussao.cjb.net
---------------------------------------------------------------------
Servidor Newsgroup da lista: news.gmane.org
Grupo: gmane.org.user-groups.programming.shell.brazil




Yahoo! Grupos, um serviço oferecido por:
PUBLICIDADE


Links do Yahoo! Grupos

Responder a