Как я делаю двоичную разность на двух тождественно размерных файлах в соответствии с Linux?

У меня есть два тождественно размерных файла, и я должен сделать двоичную разность, чтобы проверить, являются ли они тем же.

Я в настоящее время работаю diff file1.img file2.img но требуется долгое время для обработки моих файлов на 4 ГБ. Действительно ли это - самый эффективный способ сделать это?

37
задан 20.11.2014, 12:09

4 ответа

Найденный решением - cmp инструмент, который идет с большинством ароматов Linux.

16
ответ дан 07.12.2019, 08:50

cmp разработан для нахождения различий в двоичных файлах. Вы могли бы также попробовать вычисление контрольной суммы (sum) и сравните хеши.

45
ответ дан 07.12.2019, 08:50

Один из наиболее распространенных способов определения, если два файла идентичны (принятие их соответствия размеров) использует программу для создания "хеша" (по существу цифровой отпечаток) файла. Наиболее распространенные md5sum и sha1sum.

Например:

$ md5sum file1 file2
e0e7485b678a538c2815132de7f9e878  file1
4a14aace18d472709ccae3910af55955  file2

Если у Вас есть много файлов, которые необходимо проверить, например, при передаче каталога, полного файлов от одной системы до другого можно перенаправить вывод от исходной системы до файла, то md5sum/sha1sum может автоматически использовать тот файл, чтобы сказать Вам, какие файлы отличаются:

$ md5sum file1 file2 > MD5SUMS
... copy file1, file2, MD5SUMS across
$ md5sum --check MD5SUMS
file1: OK
file2: OK
21
ответ дан 07.12.2019, 08:50

Если я просто хочу знать, являются ли они тем же, я предпочитаю использовать sha1sum, если это доступно, или md5 как нейтрализация.

Если я хочу знать, насколько отличающийся они, или где они отличаются, одна вещь, которая работы должны провернуть их обоих через передозировку ('восьмеричный дамп', который обычно имеет шестнадцатеричную опцию) сделать временные файлы и затем разность они.

3
ответ дан 07.12.2019, 08:50

Теги

Похожие вопросы