Script Request

Обсуждение вопросов автоматизации Total Commander с помощью сторонних программ и скриптовых технологий.

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

Аватара пользователя
_92
Сообщения: 398
Зарегистрирован: Ср ноя 23, 2005 15:31
Откуда: ufa

Сообщение _92 »

нужен скрипт для автоматического переименования файла на ftp
index.php -> index.php.140207

сейчас просто копирую index.php на жесткий диск
добавляю в конец .ггммчч
копирую этот файла на ftp
получаю на ftp index.php и index.php.140207

если невозможно загружать переименованный файл на ftp
то хотя бы просто автоматизировать первый этап
кнопкой на панели или, что лучше, по хоткею
ubuntu+tc+synwrite
Serge Yolkin
Сообщения: 664
Зарегистрирован: Сб июл 25, 2009 11:12

Сообщение Serge Yolkin »

_92
У ftp.exe (в составе Windows) есть команда rename.
Аватара пользователя
_92
Сообщения: 398
Зарегистрирован: Ср ноя 23, 2005 15:31
Откуда: ufa

Сообщение _92 »

Serge Yolkin писал(а):У ftp.exe (в составе Windows) есть команда rename.
а как связать ftp.exe с логином/паролем из tc (мастер-пароль)?
ubuntu+tc+synwrite
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

_92
ТС тут ни при чём. С ним связывать нужно только ftp-адрес имеющимися в ТС параметрами, а логин с паролем прописать заведомо.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
_92
Сообщения: 398
Зарегистрирован: Ср ноя 23, 2005 15:31
Откуда: ufa

Сообщение _92 »

Flasher писал(а):логин с паролем прописать заведомо.
т.е. в bat или cmd нужно тогда будет в открытом виде прописать user [username] [password]?
ubuntu+tc+synwrite
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

_92
Можно bat и в exe скомпилить, если есть страх за потерю данных.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
Аватара пользователя
_92
Сообщения: 398
Зарегистрирован: Ср ноя 23, 2005 15:31
Откуда: ufa

Сообщение _92 »

способ безопасный конечно, но у меня уже около пятиста фтп-аккаунтов
ubuntu+tc+synwrite
Аватара пользователя
Flasher
Сообщения: 14229
Зарегистрирован: Пт ноя 06, 2009 00:33
Откуда: Москва

Сообщение Flasher »

500? Ух, ничего себе. Тогда весь список можно запихать в этот батник и сопоставлять по адресу.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
garmonist
Сообщения: 14
Зарегистрирован: Пт апр 23, 2010 15:18

Сообщение garmonist »

Здравствуйте. Подскажите, пожалуйста, параметры кнопки, которая бы делала следующее:

Выделен файл \\server\SomePath\FileName.xlsx. При нажатии кнопки в соседнем окне TC открывалась бы папка D:\Backup\SomePath\.

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

Сообщение Flasher »

garmonist
Что-то вроде того (см. путь к TCFS2):

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

' Параметр: %V
TCFS2 = "%COMMANDER_PATH%\Utils\TCFS2\TCFS2.exe"
Path = WScript.Arguments(0)
With CreateObject("Scripting.FileSystemObject")
 If .FileExists(Path) Then Path = .GetParentFolderName(Path)
End With : Path = Mid(Path, InStr(Path, "\\") + 2)
CreateObject("WScript.Shell").Exec TCFS2 & " /ef ""tcd(,`D:\Backup" & _
Mid(Path, InStr(Path, "\")) & "`,S)"""
Только не соседнее окно, а другая панель. Если же разговор про новую соседнюю вкладку, то там пару символов исправить нужно.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
garmonist
Сообщения: 14
Зарегистрирован: Пт апр 23, 2010 15:18

Сообщение garmonist »

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

Сообщение Flasher »

garmonist
А для чего это? Может, убить нескольких зайцев?
Вот ещё без параметра вариант:

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

' Условие: путь запуска - пустой
TCFS2 = "%COMMANDER_PATH%\Utils\TCFS2\TCFS2.exe"
With CreateObject("WScript.Shell")
  Path = .CurrentDirectory : Path = Mid(Path, InStr(Path, "\\") + 2)
  .Exec TCFS2 & "/ef ""tcd(,`D:\Backup" & Mid(Path, InStr(Path, "\")) & "\`,S)"""
End With
Только тут само выделение, как впрочем и в первом случае, роли не играет.
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
garmonist
Сообщения: 14
Зарегистрирован: Пт апр 23, 2010 15:18

Сообщение garmonist »

Flasher
У меня программа ViceVersa делает зеркальный бэкап сервера на локалку. Если файл на сервере изменен, то она не просто заменяет старый файл на локалке на новый, а старый копирует в отдельный папку с архивом, добавляя ему в название время сохранения.

Например, у меня есть файл на сервере:

x:\02 Процессы\01 Прогноз\2014\05.25\Анализ.xlsx

В зеркальном бэкапе на локалке хранится точно такой же файл:

d:\X\02 Процессы\01 Прогноз\2014\05.25\Анализ.xlsx

После того, как я поработал в этом файле на сервере и сохранил его, ViceVersa синхронизировала сервер с локалкой: заменила на локалке старый файл на новый. А старый файл с локалки скинула в архив и переименовала:

d:\ViceVersaArchive\D\X\02 Процессы\01 Прогноз\2014\05.25\Анализ.xlsx_(2014-05-28_18-11-49_OVE_T).xlsx

Таким образом, у меня в папке с архивом (d:\ViceVersaArchive) есть все версии каждого файла с сервера.

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

Сообщение Flasher »

garmonist
А ViceVersa резидентно работает? Или нужно из неё самостоятельно запускать синхронизацию?
Автору сборки TC Image (Andrey_A) настоятельно рекомендуется не распространять на иных ресурсах любую предоставленную мной где-либо техническую информацию по автоматизации и оптимизации в работе с ТС и системой.
garmonist
Сообщения: 14
Зарегистрирован: Пт апр 23, 2010 15:18

Сообщение garmonist »

Flasher
Самостоятельно. Но для ее автоматизации есть софт от того же разработчика - VVEngine. Позволяет запускать синхронизацию по времени, через одинаковые промежутки времени или когда файлы в папке-источнике изменились.
Ответить