Я знаю, що це було досить декілька років тому, але я просто знайшов безкоштовний інструмент, який може точно виконати необхідне завдання. Інструмент командного рядка, XXCOPY від Pixelab http://www.xxcopy.com/
У моєму власному сценарії я пакетно повторно стискав сотні зображень JPEG за допомогою параметра qscale FFmpeg, і шукав спосіб перезаписати лише менші файли. Тому я спробував це, і це працювало зі мною. Я перевірив, створивши резервну папку, а потім порівняв розміри папки. Однакова кількість файлів для обох папок, але інша тепер менша.
Оригінальне запитання та відповідь тут:
перезаписуйте лише файли, які менші за розміром
https://groups.google.com/forum/#!topic/alt.msdos.batch.nt/Agooyf23kFw
Дивно, але це також вирішило проблему Аскера. Ось частина відповіді автора XXCOPY:
Не могли б ви підказати мені?
Моя проблема: я отримав деякі файли в каталозі, а деякі у підкаталозі і хочу скопіювати файли у підкаталог. Справжня проблема полягає в тому, щоб перезаписати лише ті файли, які менші.
Ви можете спробувати XXCOPY (безкоштовна програма для особистого використання). Мабуть, потрібна вам команда:
xxcopy \your_source\ \destination\ /s /bzs /y
Існують і інші варіанти операцій із резервного копіювання
/BI // backup incremental (skip files of same size and time)
/BN // backup newer files only
/BO // backup older files only
/BX // backup files with a different timestamp
/BZS // backup smaller files only
/BZL // backup larger files only
/BZX // backup files with different size
/BZE // backup files with the same size
/BS // backup files with same size and timestamp
Він має також універсальну функцію виключення. Ви можете застосувати той самий механізм вибору файлів в операціях видалення. Ще одна перевага перед Xcopy полягає в тому, що XXCopy поводиться однаково у будь-яких версіях Windows (95,98, ME, NT / 2K / XP).
Тож я здогадуюсь, що Аскеру знадобиться / BZX .