Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Ветеран


Contributor


Сообщения: 2735
Благодарности: 1699

Профиль | Отправить PM | Цитировать


Вот нулевой вариант решения. У меня работает.
БАТ-файл
Код: Выделить весь код
rem ------------------------------Файлы для архивирования
Set DirForARC=N:\Delete\ForOutPut\*.*

rem ------------------------------ Путь временной папки (только для передаваемых архивов!) и начало Имени архива
Set ARCname=N:\Delete\TmpOut\Это_тест_

rem ------------------------------ ip ftp
Set FTPip=111.111.111.111

rem ------------------------------ Архиватор
Set ARC="C:\Program Files\WinRar\Winrar.exe" a

rem ------------------------------ Имя сценария для ФТП
Set Ftp_Client=N:\Delete\Ftp_Client.ftp

%ARC% %ARCname%%Date:~6,4%%Date:~3,2%%Date:~0,2%

ftp -i -s:%Ftp_Client% %FTPip% 
Del "%ARCname%*.*"
и файл сценария для сеанса ФТП, на который этот батник ссылается
Код: Выделить весь код
UserLogin
UserPass 

cd "d:\FTP Server\MailIn"
lcd N:\Delete\TmpOut
mput *.*

bye
Здесь cd "d:\FTP Server\MailIn" - это переход на директорию на фтп-сервере
lcd N:\Delete\TmpOut - на директорию на локальном компьютере с файлами для передачи
UserLogin и UserPass соответственно логин и пароль пользователя ФТП.

Что здесь плохо - нет анализа на успешность передачи файла. В развитие приведенного решения, по моему мнению, стОит то, что передали, выкачать с фтп на локальный компьютер и сравнить переданный и полученный файлы.
Буду рад, если кто-то предложит нечто более элегантное.

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.

Это сообщение посчитали полезным следующие участники:

Отправлено: 16:09, 12-05-2010 | #2