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: Поменять Junction на относительные символьные ссылки 
Author Message
HankHank



PostPosted: Wed Jan 26, 2022 18:15    Post subject: Reply with quote

Найти все точки соединения в TC понятно, как:
Поиск файлов – вкладка Плагины.

У меня есть оба-два плагина: ntlinks и nl_info.
По обоим поиск получается.

В ntlinks: Тип объекта = Точка соединения
В nl_info: Тип символической ссылки (расш) = Junction

Можно получить простыню с интересующими ссылками из комстроки:
dir /AL /S H:\ | find "JUNCTION"

Что дальше делать?
Руками всё лопатить немыслимо.

По смыслу осталось совсем чуть-чуть: ))
Взять Реальный путь и Целевой объект.
Аккуратно удалить существующую Junction.
Создать Относительную символьную ссылку, используя Целевой объект и Реальный путь.
Выполнить цикл по всему диску.

Posted after 1 hour 54 minutes:

Помимо NTLinks Maker http://wincmd.ru/plugring/NTLinksMaker.html
существует утилита Руссиновича
https://docs.microsoft.com/ru-ru/sysinternals/downloads/junction .

Для получения Рального пути ей в качестве параметра надо подсунуть найденную точку соединения:
junction.exe <junction directory>

Вот так (ещё один способ, 4-ый) можно организовать рекурсивный вывод всех точек соединения из текущей папки:
junction.exe –s .

А так можно аккуратно удалять точки соединения:
junction.exe -d <junction directory>

Осталось объединить NTLinks Maker, утилиту Руссиновича и соорудить скрипт в командном процессоре...
В этом я не силён. ((
View user's profile Send private message


Powered by phpBB © 2001, 2005 phpBB Group