
Я только что синхронизировал 2 000 000 файлов (3 ТБ) с одного RAID на другой.
Я хочу убедиться, что мои данные в целости и сохранности.
rsync -c
занимает очень много времени.
diff
не показывает мне, что он делает.
Есть ли альтернатива, которая (а) быстрее и (б) будет показывать прогресс во время сравнения?
(У меня Mac, и brew search diff
он мне apgdiff colordiff diffstat diffutils fmdiff libxdiff open-vcdiff podiff rfcdiff vbindiff bsdiff diffpdf diffuse dwdiff kdiff3 ndiff perceptualdiff rdiff-backup tkdiff wdiff
... подойдет ли один из них?)
решение1
cmp
это инструмент, который вы, вероятно, ищете: он сравнивает два файла побайтно, считывая по одному блоку каждого за раз. Как только он находит разницу, он выскакивает. Таким образом, он и быстрее (не требует чтения целых файлов, если они различаются), и надежнее (он фактически выполняет сравнение побайтно), чем контрольная сумма. Он также быстрее, diff
так как не требует сложных вычислений, чтобы показать вамгдефайлы различаются.
Вы можете легко написать небольшой скрипт для рекурсивного обхода двух ваших каталогов и вывода прогресса на основе количества обработанных файлов (или их совокупного размера).