[WCX] CopyTree - копирование с сохранением структуры

Обсуждение только плагинов и утилит для Total Commander.

Модераторы: Avada, CaptainFlint, Nik, d-view, Моторокер

ingerard
Сообщения: 128
Зарегистрирован: Вс дек 04, 2016 21:51

Сообщение ingerard »

Flasher
Ок, перешел на него, все таки поменьше код.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

ingerard
Хорошо. Под спойлер добавил максимальную глубину.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
ingerard
Сообщения: 128
Зарегистрирован: Вс дек 04, 2016 21:51

Сообщение ingerard »

Flasher
Скрипт работает, только не понял как пользоваться параметром /c, какое число не ставлю - копирует полную иерархию вплоть до буквы диска.
sa
Сообщения: 2758
Зарегистрирован: Ср апр 29, 2009 18:56

Сообщение sa »

Ещё один вариант с settext. Рекурсивный поиск окна заменён на указание родительского. Параметр %Z добавлен для копирования из архивов.

Код: Выделить всё

/ef "%Z tcm(508,1) eval(settext_wait(`CopyTree:"%T"`,findwnd(TAltEdit,,findwnd(TDLGZIP)))) sendmsg(findwnd(TButton,,findwnd(TDLGZIP),3),$f5)"
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

ingerard
А, в 25 строчке был маленький косяк. Исправил.
sa писал(а):Параметр %Z добавлен для копирования из архивов.
А смысл в сохранении подкаталогов %Теmp%? Для сохранности подкаталогов архива из режима "без подкаталогов" достаточно и обычной распаковки по F5.
Получилось шило на мыло. 6 символов убрал, 6 добавил.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
sa
Сообщения: 2758
Зарегистрирован: Ср апр 29, 2009 18:56

Сообщение sa »

В отличие от распаковки по F5 (позволяющей сохранить все подкаталоги), CopyTree позволяет сделать выбор глубины подкаталогов.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

Если речь про отрезание вышестоящих папок внутри архива, то тогда будут возникать проблемы при совпадении имён. И по идее должен отламываться автовыбор.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
ingerard
Сообщения: 128
Зарегистрирован: Вс дек 04, 2016 21:51

Сообщение ingerard »

Flasher
Можно сделать выбор глубины с другого конца? Чтоб было понятнее приведу цитату из ридми CopyTree:
Позволяет переопределять глубину каталогов. Если >0, указывает число уровней, которые нужно скопировать (1 - первый безопасный вариант, 2 - плюс ещё один уровень, и т.д.), если <0 - число уровней от корневого каталога, которые нужно пропустить (-1 - полный путь с буквой диска, -2 - полный путь без буквы диска и т.д.).
sa
Сообщения: 2758
Зарегистрирован: Ср апр 29, 2009 18:56

Сообщение sa »

Flasher писал(а):будут возникать проблемы при совпадении имён. И по идее должен отламываться автовыбор.
Надо срочно сигнализировать о ситуации автору плагина. Пусть хотя бы в readme введёт ограничения на использование плагина в архивах. :)
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

ingerard
Тогда выбор исключаемых, а не включаемых компонетов пути как сейчас. Так?
Я сперва не о том подумал. Мне казалось, что нужно из относительного пути вырезать цепочку. Это не нужно?

Ладно, сделал 3 режима.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
ingerard
Сообщения: 128
Зарегистрирован: Вс дек 04, 2016 21:51

Сообщение ingerard »

Flasher
Сейчас все работает как надо, но можете еще добавить /c:0 - копировать включая букву диска.
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

ingerard
Для в)? ОК. Упростил 35 строчку.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
ingerard
Сообщения: 128
Зарегистрирован: Вс дек 04, 2016 21:51

Сообщение ingerard »

Flasher
Да, для в) сойдет. Работает :)
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

ingerard
Не, всё-таки по-другому сделал, а то для а) кое-что отламывается.
Последний раз редактировалось Flasher Пн дек 11, 2017 12:05, всего редактировалось 1 раз.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
ingerard
Сообщения: 128
Зарегистрирован: Вс дек 04, 2016 21:51

Сообщение ingerard »

Flasher
Ну буду тестировать, если что отпишусь.
Ответить