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 

Преобразование пути к файлу, и последующий Copy

 
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander printer-friendly view
View previous topic :: View next topic  
Author Message
Olejko



Joined: 23 May 2014
Posts: 13

Post (Separately) Posted: Fri May 23, 2014 14:13    Post subject: Преобразование пути к файлу, и последующий Copy Reply with quote

Доброго времени суток!
Подскажите пожалуйста, каким образом средствами TC можно преобразовать путь к файлу?
Например, было:
/DIR1/DIR2/DIR3/...DIRn/images/filename.jpg

Необходимо получить следующую ссылку на файл, желательно сразу скопировать в буфер
/images/filename.jpg

В принципе в буфер копировать не обязательно, главное чтобы открылось окно, в котором можно выделить новые каталог и имя файла, а затес скопировать через Ctrl+C
Заранее спасибо за помощь.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Fri May 23, 2014 17:23    Post subject: Reply with quote

Olejko
С учётом "например" не очень ясен принцип отрезания начала пути. Не в таком ключе? Или главный критерий отсекания - это нумерация в конце имени каждой папки?
Система новее XP?
И конечная цель копирования в чём состоит, если не секрет?
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Olejko



Joined: 23 May 2014
Posts: 13

Post (Separately) Posted: Fri May 23, 2014 17:30    Post subject: Reply with quote

2 Flasher:
Да, именно в таком ключе.
Из "/DIR1/DIR2/DIR3/images/filename.jpg" сделать "/images/filename.jpg".

Результат обрезания "лишних" директорий вывести в PopUp с возможностью последующего выделения и копирования в буфер.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Fri May 23, 2014 17:54    Post subject: Reply with quote

Olejko
Так и не понял. В таком - это в каком из двух приведённых? Если первый, то там, как видно, требовалась работа со списками в режиме без подкаталогов. И отрезаются только идентичные части.
И я ещё два вопроса задал.
И ещё пару:
3) Выбираться будет всегда только один файл? Со списками работать не надо?
4) Возможность выделения приоритетней, чем копирование в буфер?
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Olejko



Joined: 23 May 2014
Posts: 13

Post (Separately) Posted: Fri May 23, 2014 18:07    Post subject: Reply with quote

Flasher

Мне бы хотелось автоматизировать следующий сценарий.
Есть FTP.
На FTP хранятся jpg.
JPG нужны для сайта.
Через TC я подключаюсь к ФТП, на фтп есть каталог следующего вида:
/dir1/dir2/dir3/.../images/имя_папки, всегда_разное/file.jpg, на котором находятся картинки.
Сейчас я через alt+enter просматриваю свойства файла для того чтобы скопировать необходимые мне пути файла /images/имя_папки, всегда_разное/file.jpg для последующей вставки в сайт.
Хотелось бы упростить процесс копирования - чтоб не целиться мышкой, а сразу копировать нужный путь.

Всегда будет выбираться один файл, со списками работать не надо.
Было б лучше, если бы новая ссылка не сама копировалась в буфер, а открывалось окно типа PopUP с возможностью выделения и копирования соотвествующего поля для получения новой ссылки.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Fri May 23, 2014 19:39    Post subject: Reply with quote

Тогда всё просто.
Code:
' Параметр: %V
Path = WScript.Arguments(0): Test = InStrRev(Path, "/images/")
If Test Then InputBox String(5, vbnewline) & "Скопируйте относительный путь:", Space(25) & "Файл изображения на FTP", Mid(Path, Test)

В добавление хочу отметить, что вызов окна свойств по Alt+Enter при наличии в ТС команд копирования полных путей (cm_CopyFullNamesToClip) и вставки пути к элементу под курсором в командную строку (Ctrl+Shift+Enter) выглядит, мягко говоря, странной альтернативой. Не говоря уже о таком примитивном способе добычи пути из кнопки:
Code:
TOTALCMD#BAR#DATA
OPENCUSTOMVIEW
?%P%O.%E
wcmicons.dll,45
Путь элемента под курсором

_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Olejko



Joined: 23 May 2014
Posts: 13

Post (Separately) Posted: Mon May 26, 2014 13:57    Post subject: Reply with quote

Спасибо.
Остался только один вопрос - то ли лыжи не едут, то ли...
Я скопировал код:

Code:
' Параметр: %V
Path = WScript.Arguments(0): Test = InStrRev(Path, "/images/")
If Test Then InputBox String(5, vbnewline) & "Скопируйте относительный путь:", Space(25) & "Файл изображения на FTP", Mid(Path, Test)


Вставил его в файл, сохранил файл (в трех разных форматах - txt, cmd, vbs).
Установил параметр %V.
Добавил кнопки на панель.
Пытаюсь перенести файл - то ошибка, то ничего не происходит.
Что надо еще сделать чтобы скрипт заработал ?
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Mon May 26, 2014 18:03    Post subject: Reply with quote

Расширение скрипта - vbs.
Какой файл и куда его перенести, не понял?
См. памятку.
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Olejko



Joined: 23 May 2014
Posts: 13

Post (Separately) Posted: Wed May 28, 2014 15:23    Post subject: Reply with quote

Наверно, я написал сильно не понятно.
Я хочу сделать следующее.
Через TC с помощью плагина для работы SFTP я подключаюсь к серверу, на которой находятся файлы для публикации на сайте.
Если нажать на ALT+Enter, то путь к файлу будет таким (открывается окно File Properties):

Code:
«/dir1/dir2/dir3/../dirN/images/filename.jpg»


Если нажать на Ctrl+Shift+Enter, то путь к файлу будет с обратным слешем (это не правильно).

Как сделать так, чтобы ТС смог вернуть путь (в буфер или в сплывающее окно) в формате
Code:
/images/filename.jpg
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Wed May 28, 2014 19:14    Post subject: Reply with quote

Olejko wrote:
с помощью плагина для работы SFTP я подключаюсь к серверу
Об этом изначально надо было писать. Я телепатией не владею и не знаю, что используется не встроенный функционал с иным протоколом, и какой там из плагинов меняет слеш на бэкслеш.
Да и какой именно плагин? Гислеровский?
Code:
' Параметр: %V
Path = WScript.Arguments(0): Test = InStrRev(Path, "\images\")
If Test Then InputBox String(5, vbnewline) & "Скопируйте относительный путь:", Space(25) & "Файл изображения на FTP", Replace(Mid(Path, Test), "\", "/")
В таком виде работает?
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Olejko



Joined: 23 May 2014
Posts: 13

Post (Separately) Posted: Wed May 28, 2014 23:05    Post subject: Reply with quote

Sorry
Натупил ((

Завтра попробую, сегодня нет возможности.
Плагин вот отсюда:
http://www.ghisler.com/plugins.htm
Называется SFTP.
Спасибо за отзывчивость.
Back to top
View user's profile Send private message
Flasher



Joined: 06 Nov 2009
Posts: 14229
Location: Москва

Post (Separately) Posted: Thu May 29, 2014 01:56    Post subject: Reply with quote

Да, Гислеровский, но у меня ругается на отсутствие библиотек, хотя они на месте, поэтому не могу проверить...
_________________
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Back to top
View user's profile Send private message
Olejko



Joined: 23 May 2014
Posts: 13

Post (Separately) Posted: Thu May 29, 2014 13:43    Post subject: Reply with quote

Огромное спасибо!!! Surprised Surprised Surprised
Все заработало!!!
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic    Total Commander Forum Index -> Автоматизация Total Commander All times are GMT + 4 Hours
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2005 phpBB Group