Копія командного рядка Windows на основі порівняння бінарних файлів


0

Я шукаю утиліту, вбудовану чи ні, яка дозволить мені по суті виконувати операцію, схожу на роботоскопію, але зі порівнянням бінарних файлів замість порівняння дат.

По суті, у мене є гак git, який перевіряє останню версію репо, а потім запускає робокопію, щоб скопіювати файли, які змінилися в певне місце. З будь-якої причини, він вважає, що всі файли були змінені, імовірно, тому, що процес оформлення каси торкається їхніх дат. Мені потрібен спосіб виконати цю дію за допомогою перевірки бінарних файлів. Швидкість не є пріоритетною, мені просто потрібно, щоб вона була точною і не перезаписувала всю віддалену папку кожен раз.

Відповіді:


0

Просто зробіть сценарій копіювання та використовуйте вихідну команду FC як умову введення. FC file1.tmp file2.tmp Якщо в результаті "різниці не виявлено", тоді поставте умову пропустити, інакше скопіюйте.


Дякую, я дійсно шукаю щось, що мені не доведеться писати більше логіки навколо, оскільки це вже зламано разом досить ескізно. Чим менше розбір через командний вихід, щоб вирішити, що скопіювати, тим краще.
Таз

Альтернативою цьому, але подібному, було б використовувати FC для всіх необхідних файлів і вивести їх у текстовий файл, а потім прочитати звідти необхідну інформацію. Це також забезпечить вам еквівалент журналу і полегшить відстеження можливих проблем. Оскільки ФК насправді потребує списку, з яким можна працювати, ви можете отримати команду dir і дублювати його стовпцями excel (з метою використання його з FC).
Перекрити

0

Що я того вартий, я в кінцевому підсумку використовував BeyondCompare, який є платним продуктом, на який ми мали ліцензію.

BComp.com @"X:\Path\To\bc.cfg" /silent

Де bc.cfg

log verbose "X:\path\to\log\bclog.txt"
criteria crc
load "X:\source\path" "X:\dest\path"
sync update:left->right

Щоб виконати еквівалент роботокопії / Mir, останній рядок також може бути:

sync mirror:left->right
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.