[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
AWK ...E a saga continua...
From: |
ldaluz2002 |
Subject: |
AWK ...E a saga continua... |
Date: |
Tue, 11 Feb 2003 18:38:53 -0000 |
User-agent: |
eGroups-EW/0.82 |
Caros membros,
ainda tento, se bem que agora bem mais desanimada, comparar dois
arquivos txt no unix.
Para aqueles que nao leram meu apelo semana passada e possa agora,
quem sabe me ajudar, segue abaixo o resumo:
Tenho dois arquivos com o seguinte formato:
00000006030048868254613617889 24778826196364619
0000063XXXX
00000006030048868255613845788 24779486196350276
0000008XXXX
00000006030048868256614117474 24779466199701234
0000009XXXX
00000006030048868257616294845 24779326196115336
0000014XXXX
00000006030048868258616421166 24775016199785330
0000458XXXX
00000006030048868260613268717 24779066199787057
0000052XXXX
00000006030048868261614781732 24779126196299899
0000028XXXX
Sao milhoes de linhas que devo comparar do arq1 com o arq2.
a primeira comparacao deve ser feita da substr($o,21,56).
Apos eu reservar todos exatamente iguais, devo considerar uma
tolerancia para substr($0,42,7) e substr($0,69,7), O que significa
que a diferenca de substr($o,42,7) do arquivo 1 deve ser menor ou
igual a tolerancia que busco de um terceiro arquivo.
E o mesmo vale para a diferenca da substr($0,69,7) dos dois arquivos.
Ja me falaram que em C e facil, mas eu ainda conheco muito pouco de
C para arriscar!
Vejam o script abaixo ( nao funciona naturalmente, mas ilustra minha
atual angunstia :^))
awk '{
getline arquivo1.txt > a
substr($a,1,10) > id1
substr($a,11,10) > id2
substr(a,21,56)> parte1
grep $parte1 id2 & arquivo2 > e1.txt
} '
#Minha intensao 'e primeiro buscar uma linha do arquivo1
#Depois separo os dois ids que devo utilizar no final do processo
#e a string de comparacao, se encontro esta no arquivo2, guardo
para, mas tarde importa-lo para o Oracle.
A segunda parte ( comparar com tolerancia ) ainda nao tenho ideia
como iniciar.
Alguma luz??
Grata
L da Luz
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- AWK ...E a saga continua...,
ldaluz2002 <=