Encontre a porção correspondente mais longa em dois arquivos binários

1

Digamos que eu tenha dois arquivos binários, cada um com aproximadamente 50 MB, que may contenham uma parte idêntica à digital. Existe uma maneira fácil de comparar esses dois arquivos, encontrar a parte idêntica mais longa e salvá-la em um arquivo?

(Se for importante, os arquivos em questão são arquivos AAC de captura de fluxo. Eles têm algum padrão de áudio que soa idêntico, mas pode ou não ser digitalmente idêntico. Eu tenho uma tarefa de duas partes: primeiro determine se o clichê é digitalmente idêntico, segundo extraia a parte idêntica.)

    
por mikeola 27.09.2015 / 22:20

1 resposta

0

Eu recomendo que você use cmp é bastante útil e tem boas opções como -b se você quiser imprimir bytes que diferem e -l ser mais detalhado. Por exemplo, para comparar o arquivo aeb use uma linha de comando como:

$ cmp -lb a b

Ele irá mostrar todos os bytes que diferem. Se ambos os arquivos forem iguais, cmp retornará silenciosamente (você sempre pode verificar seu valor de retorno $?) Note que cmp com a opção -b produzirá apenas bytes diferentes e que, se você não usar a opção -l, irá parar no primeiro byte que seja diferente.

    
por 27.09.2015 / 22:44

Tags