Всем привет! Задача. Есть два огромных двоичных файла (~500 ГБ). В общем случае файлы могут быть упакованы разными архиваторами или одним и тем же, но с разными параметрами сжатия. Однако эти гига-файлы с большой долей вероятности одинаковы или почти одинаковы. Как без распаковки на жесткий диск сравнить два файла в архивах. Подобная задача встает часто. Система Linux.Мысли.
Можно было бы использовать команду cmp для сравнения примерно так:
gunzip -c file1.gz | cmp file2
Однако в этом случае требуется, чтобы хотя бы один файл был распакован, что неприемлемо из-за огромных объемов данных.
Можно ли как-то организовать второй поток ввода и передать его команде cmp?
Может быть, можно создать виртуальный файл (virtfile2), при обращении к которому происходила бы автораспаковка архива file2.gz (т.е. gunzip -c file2.gz)?
Какие у кого есть мысли по этому поводу?