|
Нужна программка для умного копирования файлов
|
|
12.12.2014, 06:18
|
|
#1
|
Регистрация: 02.09.2014
Сообщений: 807
|
Нужна программка для умного копирования файлов
|
Здравствуйте, нужна программа которая бы при копировании, не копировала дубликаты по размеру и имени файла.. т.е. к примеру на 1ом диске у меня:
aaa.avi - 30mb
bbb.avi - 45mb
ccc.avi - 100mb
ddd.avi - 150mb
на 2ом диске у меня:
terminator.avi - 48mb
robocop.avi - 100mb
uralskie gori mp4 - 120mb
karabas.avi - 150mb
При копировании с 1ого диска на второй, я выделяю все файлы с 1ого диска (это будут папки с видео файлами) и копирую их на второй диск (это те же самые папки, имя их одно и то же). Программа должна скопировать файлы из каждой папки 1ого диска в ту же по имени папку с файлами 2ого диска.... Но должна не все файлы, а только недостающие, проверяя их по имени и размеру файла. Т.е. к примеру если в какой то папке 1ого диска лежали файлы
aaa.avi - 30mb
bbb.avi - 45mb
ccc.avi - 100mb
ddd.avi - 150mb
terminator.avi - 48mb
а на втором диске есть папка с тем же именем с такими файлами
terminator.avi - 48mb
robocop.avi - 100mb
uralskie gori mp4 - 120mb
karabas.avi - 150mb
bbb.avi - 45mb
то после применения такого умного копирования в этой папке на 2ом диске должны оказаться файлы
terminator.avi - 48mb
robocop.avi - 100mb
uralskie gori mp4 - 120mb
karabas.avi - 150mb
bbb.avi - 45mb
aaa.avi - 30mb
|
|
|
12.12.2014, 16:45
|
|
#2
|
Регистрация: 11.02.2012
Сообщений: 2,241
|
стандартная функция винды - копировать вставить
при обнаружении файлов папок с одинаковым именем вам будет предложено на выбор несколько операций: заменить, сохранить оба, пропустить
в вашем случае - пропустить все
|
|
|
12.12.2014, 17:20
|
|
#3
|
Регистрация: 16.09.2012
Сообщений: 4,810
|
miraida, Вы забыли про размер файлов, который также нужно учитывать при копировании. Из самых простых вариантов на ум приходит пока только BAT-файл (алгоритм легко можно будет потом скорректировать, если правила копирования со временем изменятся). Поиграюсь еще с Total Commander, если смогу найти алгоритм для реализации задачи, обязательно его здесь выложу.
|
|
|
12.12.2014, 17:46
|
|
#4
|
Регистрация: 11.02.2012
Сообщений: 2,241
|
Хорошо, допустим ситуацию
в первой папке 0000.ави 50мб
во второй папке 0000.ави 55мб
допустим что это 2 разных видео но названия совпадают
как программа должна сама понять что делать с файлом?
заменить на более новый - потеряем старое видео
пропустить - потеряем новое видео
как программа без человека должна понять что в этом случае нужно сохранить оба файла?
Следующая ситуация
в первой папке 0000.ави 50мб
во второй папке 0000.ави 55мб
допустим что это 2 одинаковых видео но одно битое
как программа должна сама понять что делать с файлом?
сохранить оба - лишний мусор на винте
пропустить - потеряем новое видео
как программа без человека должна понять что в этом случае нужно заменить на более новый?
возникает непонятка - потому винда и предлагает несколько решений, при этом возможно указать - применить только к этому файлу или применить ко всем последующим тоже это правило
|
|
|
12.12.2014, 18:29
|
|
#5
|
Регистрация: 16.09.2012
Сообщений: 4,810
|
miraida, не нужно придумывать лишние условия и исключения, в процессе работы "Заказчик" - "Исполнитель" это обычно приносит огромные проблемы. ТЗ автора темы было чётко сформулировано: при копировании нужно игнорировать одинаковые имена и размеры файлов. Обо всех остальных частных случаях автор скорее всего позаботится сам.
Несколько раз перечитала ТЗ и склоняюсь к тому, что предложенное Вами решение во втором ответе - самое оптимальное (не нужно никаких программ).
|
|
|
12.12.2014, 18:39
|
|
#6
|
Регистрация: 02.09.2014
Сообщений: 807
|
Сейчас более подробно напишу всю схему, надо было мне сразу это сделать(
Вот у меня есть сейчас диск, на нем куча папок с категориями, femdom, strapon, bbw, и т.д, в категории находятся скачанные видео файлы с различными именами, я переименовываю по 20 файлов из каждой папки на имена такого типа... в одной папке olr000001 - olr000020, в другой папке femdom000001 - femdom000020, и т.д.
Я купил новый диск в который сделал резервную копию, (выделил все папки на контрол А и скопировал на второй диск...) второй диск убрал на время. Проходит время, я пополняю 1ый диск файлами их все больше и больше, настало время заготавливать следующие 20 постов... я применяю батник, он в каждой категории переименовывает произвольные файлы (кроме моих olr000001 - olr000020, femdom000001 - femdom000020), пополняя цепочку, т.е. для двух категорий с выше указанными файлами, произвольные файлы переименуются на файлы olr000021 - olr000040, femdom000021 - femdom000040. Я достаю свой 2ой диск, чтобы дополнить на него недостающее. Выделяю опять все папки с первого диска на контрол А и копирую их на второй, данные файлы должны пропускаться olr000001 - olr000020, femdom000001 - femdom000020 (это те же самые файлы 100% из произвольных файлов таких больше не будет), также должны пропускаться все произвольные файлы, которые которые уже есть на диске 2, которые попали под копирование 1ый раз (они будут сходиться по имени и размеру), также должны дополниться все произвольные файлы которые я накачал за все это время, которых нету на втором диске. Но самое главное должны перезаписаться те файлы, которые мы переименовали olr000021 - olr000040, femdom000021 - femdom000040, т.е. по сути некоторые из них уже есть на втором диске, они того же размера, но с другими именами, нужно чтобы эти файлы не продублировались...
|
|
|
12.12.2014, 19:14
|
|
#7
|
Регистрация: 11.02.2012
Сообщений: 2,241
|
Сообщение от AlexanderSh88
т.е. по сути некоторые из них уже есть на втором диске, они того же размера, но с другими именами, нужно чтобы эти файлы не продублировались
| Тут только сверять сумму, иначе никак. Без человека прога не поймет где одинаковое видео а где нет.
Правило: сверить по хешу, при совпадении пропустить
Ну или заменить, если вы хотите сохранить видео с новыми именами, увеличится время выполнения.
|
|
|
Здесь присутствуют: 1 (пользователей: 0, гостей: 1)
|
|
|