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

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

Re: [shell-script] Comparar dois arquivos gigantes


From: jimmy
Subject: Re: [shell-script] Comparar dois arquivos gigantes
Date: Fri, 3 Jun 2011 19:25:28 -0300
User-agent: mutt-ng/devel-r804 (Linux)

On Fri, Jun 03, 2011 at 02:26:30PM -0000, allan_hkrs wrote:
> Pessoal, sei que o grupo até não envolve o assunto que vou tratar, mas
> gostaria de pedir ajuda porque sei que vocês aqui manjam muito.
>
> Me  defrontei  hoje   com  uma  situação  não   muito  comum.  Preciso
> comparar no  shell dois  arquivos texto  (até aí  tudo bem,  faço isso
> rotineiramente).  A questão  é que  um arquivo  possui 87059  linhas e
> tenho que  procurar cada linha  dentro um  arquivo de 2200  linhas, ou
> seja, procurar comparar cada linha das 87 mil com cada linha das 2200.
>
> Estava tentando fazer isso da seguinte maneira:
>
> egrep -f arquivo87mil.txt arquivo2mil.txt
>
> Só que  dessa maneira  segundo meus cálculos  o resultado  irá demorar
> absuradamente  para ser  gerado (cerca  de  18 dias).  A questão  é...
> existe alguma outra forma de se  fazer isso que seja melhor (num tempo
> viável)?
>
> Pensei em usar o  awk ou mesmo fazer um programa em  C... mas antes de
> estourar os miolos vim perguntar aos mestres dos magos... kkkkk
>
> Grato Allan                                                          .
>
> 

Sua necessidade, na realidade, é comparar registros e não arquivos.

Os arquivos parecem "pequenos", mas ...

Qual o tamanho em bytes de cada registro?
Tamanho fixo, variável?

Quanto de memória tem disponível?

Supondo o arquivo com  87K linhas "A" e o arquivo com  2k linhas "B", você
precisaria saber:

- registros em A e NÃO em B;
- registros em A e em B;
- registros em B e NÃO em A;
- todos os anteriores?

-- 
"Não manejo bem as palavras
Mas manipulo bem as strings."
------------------------------


reply via email to

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