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

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

Re: Manipulação de registros em texto com tamanho delimitado


From: voyeg3r
Subject: Re: Manipulação de registros em texto com tamanho delimitado
Date: Wed, 04 Jan 2006 18:19:01 -0000
User-agent: eGroups-EW/0.82

Não sei se estou sugerindo besteira, mas tente...
estou considerando arquivos com o mesmo número de linhas
=====================================================
/arquivo/um  --> 999
/arquivo/dois --> 117000410481

Pegar quantidade de linhas
 var=`cat /arquivo/um | sed -n '$='`

for ((i=1;i<=$var;i++)) do

     a=`cat /arquivo/um | sed $i'!d' | cut -c1-3`

     b=`cat /arquivo/dois |  sed $i'!d' | cut -c3-5`
     cat /arquivo/dois | sed ${i}s/$b/$a/ >> novoarquivo
done
=========================================================



--- Em address@hidden, Fabricio Lopes de Souza
<linux.fabricio@g...> escreveu
>
> [root@fabricio]# echo $a
> 117000410481
> [root@fabricio]# echo $a | sed "s/\(...\)${a:3:3}\(...\)/\1999\2/"
> 117999410481
> [root@fabricio]#
> 
> 
> ou seja , sempre pego 3 caracteres a partir da posicao 3 , e altero
> para oq eu quero , que n o caso eh 999
> =D
> 
> On 1/4/06, pepelegal83 <pepelegal83@y...> wrote:
> > sao registros extraídos do interbase, preciso alterar determinadas
> > posições no arquivo texto com coluna limidata,,, o arquivo não
> > possuí head nem triller.
> > desde já agradeço a ajuda
> > [ ]'s
> > --- Em address@hidden, Roger Martins
> > <rogermdl@y...> escreveu
> > >
> > > Só por curiosidade, essa base de dados é em que?
> > >
> > > pepelegal83 <pepelegal83@y...> escreveu:          no ARQ_1 contém
> > 123000789 e no ARQ_2 contém 999, gostaria de
> > >   substituir as posições de 4 até 6 que são "000" por 999 que está
> > no
> > >   arquivo texto ARQ_2.
> > >   isso numa lista de mais de 8 mil registros com 600 colunas.
> > >   Grato
> > >
> > >   --- Em address@hidden, Gentil de Bortoli Júnior
> > >   <listas@b...> escreveu
> > >   >
> > >   > Colega, creio que sua explicação está um tanto quanto confusa.
> > Que
> > >   tal você
> > >   > mandar trechos dos arquivos e a saída que você espera ter?
> > >   >
> > >   > []s
> > >   >
> > >   > On 1/4/06, pepelegal83 <pepelegal83@y...> wrote:
> > >   > >
> > >   > > Preciso alterar determinados campos/colunas em um arquivo
> > texto,
> > >   mas
> > >   > > as alterações estão em outro arquivo.
> > >   > > Seria algo assim:
> > >   > > 123000789 contendo no arquivo texto = ARQ_1
> > >   > > 999 contendo no arquivo texto = ARQ_2
> > >   > > Queria substituir o registro posição 4, 5 e 6 = 000 do ARQ_1
> > >   > > por 999 do ARQ_2 sem alterao o tamanho do arquivo ARQ_1 de 9
> > >   posições.
> > >   > > Desde já agradeço a ajuda.
> > >   > > [ ]'s
> > >   > > Pepe
> > >   > >
> > >   > >
> > >   > >
> > >   > >
> > >   > >
> > >   > >
> > >   > > -------------------------------------------------------------
> > ----
> > >   ----
> > >   > > 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
> > >   > >
> > >   > >
> > >   > >
> > >   > >
> > >   > >
> > >   > >
> > >   > >
> > >   > >
> > >   >
> > >   >
> > >   > --
> > >   > []'s
> > >   > Gentil Júnior
> > >   >
> > >   >
> > >   > [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: 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
> > >     var lrec_target="_blank";var lrec_URL=new Array();  lrec_URL[1]
> > ="http://br.rd.yahoo.com/SIG=12f5149d7/M=387526.7663462.8550203.15880
> > 51/D=brclubs/S=2137111254:HM/Y=BR/EXP=1136384630/A=3215516/R=0/SIG=16
> > e56adpd/*http://landingstrip.dell.com/landingstrip/ls.asp?
> > CID=10029&LID=288321&DGC=BA&DGStor=DHS&DGSite=Yahoo&Conum=BR&DURL=htt
> > p://www1.la.dell.com/content/products/category.aspx/desktops?c%3Dbr%
> > 26l%3Dpt%26s%3Ddhs";  var
> > lrec_flashfile="http://br.i1.yimg.com/br.yimg.com/i/br/ads6/301205_y3
> > 00x250dic29_dhs_producto.swf?clickTAG=javascript:LRECopenWindow
> > (1)";  var
> > lrec_altURL="http://br.rd.yahoo.com/SIG=12f5149d7/M=387526.7663462.85
> > 50203.1588051/D=brclubs/S=2137111254:HM/Y=BR/EXP=1136384630/A=3215516
> > /R=1/SIG=16e56adpd/*http://landingstrip.dell.com/landingstrip/ls.asp?
> > CID=10029&LID=288321&DGC=BA&DGStor=DHS&DGSite=Yahoo&Conum=BR&DURL=htt
> > p://www1.la.dell.com/content/products/category.aspx/desktops?c%3Dbr%
> > 26l%3Dpt%26s%3Ddhs";  var
> > >
> > lrec_altimg="http://br.i1.yimg.com/br.yimg.com/i/br/ads6/301205_y300x
> > 250dic29_dhs_producto.jpg";  var lrec_width=300;var
> > lrec_height=250;
> > >
> > > ---------------------------------
> > >   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!.
> > >
> > >
> > >
> > >
> > >
> > > ---------------------------------
> > >  Yahoo! doce lar. Faça do Yahoo! sua homepage.
> > >
> > > [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: 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]