Средство копирования без дубликатов "CopyOnliOnse" |
Представляю Вам бесплатную программу
одноразового
копирования "CopyOnliOnse_0.1"
CopyOnliOnse может пригодится Вам в сдедующих случаях:
I. У вас скопилось множество файлов в разных директориях, среди которых наверняка есть дубликаты под разными именами. И вам вздумалось их как нибудь упорядочить, сохранить в архив предварительно избавившись от дубликатов.
II. Вам не удается найти подходящую систему сохранения версий. В этом случае можно воспользоваться CopyOnliOnse - просто создайте .bat файл командными строками CopyOnliOnse и запускайте его по мере необходимости вручную или еще лучьше установите ярлык в автозапуск или воткните командную строку CopyOnliOnse в планировщик заданий. И через запланированные интервалы измененные файлы будут копировантся в нужную папку добавляя файл с номером копиии...
Ну, хватит рекламы, - далее описание способа работы программы CopyOnliOnse
CopyOnliOnse 0.1 не сохраняет каких либо настроек для своей работы. Но возможна автоматизации работы программы при помощи командной строки вида:
CopyOnliOnse "H:\Moe\prog\CPP\" "K:\vers" "*.cpp" "_ver_" 0 50000 /norun /exit
Параметры командной строки должны располагаются в следующей
последовательности
1) Каталог источника;
2) Каталог назначения;
3) Маска обрабатываемых файлов;
4) Текст добавляемый к имени файла при совпадении имен;
5) Минимальный размер файла;
6) Максимальный размер файла (при его указании требуется чтобы на
5-й
позиции была указан минимальный размер файла, 0 - если фильтр не
требуется);
ключи /norun и /exit могут располагаться на 4-8 позициях параметров.
Если параметров командной строки больше 3 и не указан ключ /norun программа начинает работу, как если была нажата кнопка «Начать».
/exit - ключ указывает программе закрыть приложение по окончании работы - данная функция применима только из командной строки.
/norun - ключ позволяет из командной строки заполнить поля программы не запуская процесс сравнения-коприровния.
ключи /norun и /exit могут быть указазаны в виде -norun и -exit
Примеры командной строки
CopyOnliOnse "H:\Moe\prog\CPP\" "K:\vers" "*.h" "_ver_" /norun
CopyOnliOnse "H:\Moe\prog\CPP\" "K:\vers" "*.cpp" "_ver_" 1000
50000 /exit
CopyOnliOnse "C:\" "F:\vse" "*.*" "_ver_" 10000
Программа должна запускаться под Windows 95, 98, 2000, XP
При копировании файлов нужно следить за количеством файлов копируемых в каталог. Для FAT32 Windows не позволяет запихнуть в каталог более 25500 файлов (по крайней мере на машине автора программы). CopyOnliOnse - конечно постарается сообщить об ошибке, но все таки следует при большом количестве файлов рекомендуется закрыть приложение, запустив его вновь, применяя фильтры по размеру, копируя файлы в разные каталоги.
С количеством файлов в каталоге, связанно и увеличение времени на копирование - чем их больше в каталоге, тем медленнее работает программа, причем в геометрической прогрессии, и если на сравнение файлов требуется 1 час, то на копирование 8, правда за это время должно быть достигнуто предельное количество файлов в каталоге. С этим эффектом связанно некорректное отображение процента выполненного копирования - отображается процент прошедших сравнение файлов, но по времени на первые 10% занимают на порядок меньше времени, чем последние 10%.
Также механизм индексации по размерам хорошо работает на неупорядоченных массивах, но на упорядоченных по размерам массивах файлов его работа замедляется, что правда на общее время работы программы влияет незначительно.
![]() |
![]() |