Total Commander Forum Index Total Commander
Форум поддержки пользователей Total Commander
Сайты: Все о Total Commander | Totalcmd.net | Ghisler.com | RU.TCKB
 
 RulesRules   SearchSearch   FAQFAQ   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Single Post  Topic: [script request] Преобразуем дубликаты в ссылки NTFS 
Author Message
DrShark



PostPosted: Tue Jun 30, 2009 06:51    Post subject: [script request] Преобразуем дубликаты в ссылки NTFS Reply with quote

В настоящий момент для TC уже есть автоматизатор сжатия фавйлов средствами NTFS, но эта файловая система даёт нам больше возможностей для экономии места. Удаление дубликатов не всегда приемлемо и здесь нас могут вырчуить жёсткие (а на ОС Windows Vista и выше - также символические) ссылки. Дело в том, что ссылка на файл не обязана иметь тоже имя, что и оригинал. Теперь вспомним о том, что при удалении одной ссылки другие копии остаются нетронутыми. так что работа с ними вполне безопасна.

Идея следующая:
- средствами тотала находим на диске дубликаты
- файлы на панель, выделяем нужные файлы
- запускаем (например, кнопкой) скрипт.

Алгоритм скрипта:
- считает контрольные суммы выделенных файлов
или берёт из колонки (как это может делать DupSelector)
- если у файла есть дубликат с аналогичной контрольной суммой, то
а) проверяет, является ли он жёсткой ссылкой. Если да, идём к следующему дубликату.
б) если файл не является жёсткой ссылкой, один из файлов удаляется и на его местке появляется жёсткая ссылка с именем удалённого файла.
Таким образов, вместо удаления дубликатов мы конвертируем их в жёсткие ссылки, тем самым экономим место на диске.

Естественно, это будет работать в пределах одного диска,
но для висты и выше можно предусмотреть конвертирование дубликата в символическую ссылку (там есть свои ньюансы, по-этому реализация этого функционала фторостепенна).

Вопрос гуру скриптинга, насколько реально реализовать такое средствами VBScript/PowerPro?

Приветствуются любые идеи идеи по автоматизации процесса, в т.ч. средствами внешних утилит или написание спец. плагина. В общем, не обязательно ограничиваться скриптами.
View user's profile Send private message Visit poster's website


Powered by phpBB © 2001, 2005 phpBB Group