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

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

Manipulação de registros em texto com tamanho delimitado


From: Julio Cezar Neves - DATAPREVRJ
Subject: Manipulação de registros em texto com tamanho delimitado
Date: Thu, 5 Jan 2006 11:14:19 -0200

Ô Pepe,
vc não está tão legal assim. Desde ontem já foram dadas diversas respostas e
vc continua na mesma pergunta! Vou repetir o que falei ontem e por favor só
volte ao assunto se a resposta estiver errada ou não atender.

Prompt> cat arq1
123000789
789000456
321000987
Prompt> cat arq2
999
888
456

Como vc viu este é o ambiente igual ao que vc preparou no seu exemplo. Agora
uma solução em um one-liner:

Prompt> paste -d "" <(cut -c -3 arq1) <(cat arq2) <(cut -c 7- arq1)
123999789
789888456
321456987

[ ]s,
Julio Cezar Neves
Tel:+55 21 2555-6148 / +55 21 8112-9988
Fax: +55 21 2555-6154
http://www.julioneves.com


| -----Mensagem original-----
| De: pepelegal83 [mailto:address@hidden]
| Enviada em: quinta-feira, 5 de janeiro de 2006 10:47
| Para: address@hidden
| Assunto: [shell-script] Re: Manipulação de registros em texto com
| tamanho delimitado
| 
| 
| Olá
| No arquivo 1 tenho 8 mil registros com 9 colunas.
| e no arquivo 2 tenho 8 mil registro com 3 colunas.
| Queria trocar as posições 4 a 6 do arquivo 1 pelas posições 1 a 3 do 
| arquivo 2, sendo estes registros distintos um dos outros.
| entaum ficaria assim
| arquivo 1    arqvuivo 2    saída
| 123000789    999           123999789  
| 789000456    888           789888456
| 321000987    456           321456987
| isto em 8 mil registros.
| substituir a string numa determinada posição por outra em outro 
| arquivo na mesma seguencia , os dois arquivos tem o mesmo número de 
| registro.
| 
| Grato
| 
| --- Em address@hidden, Mauricio <ricio_rs_osw@y...> 
| escreveu
| >
| > Olá...
| > Sabe que eu ainda não entendi direito? Pensei em algumas coisas 
| por aqui, mas parece que falta informa´cão...
| > No arquivo 1 vc tem muitos registro de nove dígitos em que vc 
| deseja substituir apenas as posi´cões de 4 a 6, certo?
| > Mas e no arquivo 2? Vc tem o quê? Muitos registros também ou um só?
| > 
| > Abra´co,
| > Ricio
| > 
| > pepelegal83 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.as
| p?
| > > 
| 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
| > > 
| > > 
| > > 
| > > 
| > >  
| > > 
| > > 
| > >
| >
| 
| 
| 
| 
| 
| 
| ---------------------------------------------------------------------
| 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]