Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Войти
 
Страницы: 1
RSS
Отправка файлов на FTP-сервер средствами ОС
 
Добрый день!
Имеется на компьютере файл формата *.rar (допустим в папке C:\Temp\Документ.rar)
Его необходимо отправить на FTP-сервер (поднят при помощи ПО – Gene6 FTP Server Версия 3.10.0 Build 2), имеющий авторизацию по логину и паролю.
Хотелось бы все это осуществить встроенными средствами операционной системы запуском одного исполняемого файла (например формата *.bat), чтобы пользователь запустил этот файл, и он оказался уже в определенной папке на FTP-сервере.
Вопрос – как в данном случаи должен выглядеть исполняемый *.bat файл?
 
Цитата
9892301 пишет:
Хотелось бы все это осуществить встроенными средствами операционной системы запуском одного исполняемого файла (например формата *.bat), чтобы пользователь запустил этот файл, и он оказался уже в определенной папке на FTP-сервере.

Вопрос – как в данном случаи должен выглядеть исполняемый *.bat файл?
Пакетный файл, в данном случае, должен использовать системную утилиту ftp.

ftp -h
Особенно обрати внимание на опцию -s
 
Для ознакомления...

http://forum.ru-board.com/topic.cgi?forum=62&topic=11504
 
Строка для запуска из батника: ftp -s:<Путь_к_файлу_с_коммандами> <Хост>
Файл с командами:
Логин
Пароль
cd <Папка_куда_копировать_будем>
send <файл_который_копируем>
quit

Вот пример:
Строка для запуска из батника: ftp -s:c:\ftp.lst yaroslavna.bel.ru
Файл ftp.lst:
Uzver
password
cd /public_html/files
send c:\test.txt
quit
Изменено: IceBeerg - 18.08.2009 16:28:42
 
1. ftp.bat

@echo off
ftp -n -s:C:\Temp\ftp_Vol.4_Inteleca\ftp_cmd.txt "IP адрес FTP - сервера"

2. ftp_cmd.txt

USER price
PASS price
bin
cd /price
put C:\Temp\price.rar
quit


Положил в одну папку с батником и сценарием - файл ftp.exe
Теперь при запуске батника , выходит следующее -

The FAR manager, version 1.70 (build 2087)
Copyright © 1996-2000 Eugene Roshal, Copyright © 2000-2006 FAR Group
Пожалуйста, зарегистрируйте Вашу копию
C:\Temp\ftp_Vol.4_Inteleca>ftp.bat
Связь с "IP адрес FTP - сервера"
220 Gene6 FTP Server v3.10.0 (Build 2) ready...
ftp> USER price
331 Password required for price.

530 Login or Password incorrect.
Сбой входа.
ftp> bin
530 Please login with USER and PASS first.
ftp> cd /price
530 Please login with USER and PASS first.
ftp> put C:\Temp\price.rar
ftp> quit
221 Goodbye.

А на этот раз где ошибка?
 
Цитата
9892301 пишет:
ftp -n -s:C:\Temp\ftp_Vol.4_Inteleca\ftp_cmd.txt "IP адрес FTP - сервера"

Может быть эхо мешает. Попробуй так:
ftp -i -n -v -s:C:\Temp\ftp_Vol.4_Inteleca\ftp_cmd.txt "IP адрес FTP - сервера"
 
Цитата
disintegrator пишет:
Цитата
9892301 пишет:
ftp -n -s:C:\Temp\ftp_Vol.4_Inteleca\ftp_cmd.txt "IP адрес FTP - сервера"

Может быть эхо мешает. Попробуй так:
ftp   -i   -n   -v   -s:C:\Temp\ftp_Vol.4_Inteleca\ftp_cmd.txt "IP адрес FTP - сервера"

Не помогло , тоже самое выходит

The FAR manager, version 1.70 (build 2087)
Copyright © 1996-2000 Eugene Roshal, Copyright © 2000-2006 FAR Group
Пожалуйста, зарегистрируйте Вашу копию
C:\Temp\ftp_Vol.4_Inteleca>ftp.bat
Связь с «IP адрес FTP сервера”.
220 Gene6 FTP Server v3.10.0 (Build 2) ready...
ftp> USER price
331 Password required for price.

530 Login or Password incorrect.
Сбой входа.
ftp> bin
530 Please login with USER and PASS first.
ftp> cd /price
530 Please login with USER and PASS first.
ftp> put C:\Temp\price.rar
ftp> quit
221 Goodbye.
 
Цитата
9892301 пишет:
USER price
PASS price
Не пишите USER и PASS, пишите просто первой строкой имя пользователя, а второй пароль.
 
Цитата
IceBeerg пишет:
Цитата
9892301 пишет:
USER price
PASS price
Не пишите USER и PASS, пишите просто первой строкой имя пользователя, а второй пароль.

1. ftp.bat

@echo off
ftp -n -s:C:\Temp\ftp_Vol.4_Inteleca\ftp_cmd.txt "IP адрес FTP - сервера"

2. ftp_cmd.txt

USER price
price
bin
cd /price
put C:\Temp\price.rar
quit


Положил в одну папку с батником и сценарием - файл ftp.exe
Теперь при запуске батника , выходит следующее -

C:\Temp\ftp_Vol.4_Inteleca>ftp.bat
Связь с 83.246.140.178.
220 Gene6 FTP Server v3.10.0 (Build 2) ready...
ftp> USER price
331 Password required for price.

230 User price logged in.
ftp> bin
200 Type set to I.
ftp> cd /price
250 CWD command successful. "/price" is current directory.
ftp> put C:\Temp\price.rar
ftp> quit
221 Goodbye.

Но файла price.rar на FTP сервере в папке /price - нет
Почему?
 
Цитата
9892301 пишет:
Но файла price.rar на FTP сервере в папке /price - нет
Почему?
Вы логинетесь под пользователем "USER price" и паролем price?
Вам выдается ошибка
Цитата
331 Password required for price.
, надеюсь сами переведете.
Может стоит написать не
Цитата
USER price
price
а
Цитата
price
price
Тогда Вы должны войти под пользователем price и с паролем price.
И при копировании файла попробуйте использовать не
Цитата
put C:\Temp\price.rar
а
Цитата
send C:\Temp\price.rar
 
file ftp.txt

anonymous
password
bin
cd vpn
get file.name
close
quit

ftp -s:ftp.txt ftp.server.ru
 
Цитата
*tyler* пишет:
file ftp.txt

anonymous
password
bin
cd vpn
get file.name
close
quit

ftp -s:ftp.txt ftp.server.ru

Батник -
@echo off
ftp -i -n -s:ftp_cmd.txt 10.10.10.10
Сценарий
price
price
bin
cd /price
send C:\Temp\price.rar
quit

Результат -
C:\Temp\ftp_Vol.4_Inteleca>ftp.bat
Связь с 10.10.10.10.
220 Gene6 FTP Server v3.10.0 (Build 2) ready...
ftp> price
Недопустимая команда.
ftp> price
Недопустимая команда.
ftp> bin
530 Please login with USER and PASS first.
ftp> cd /price
530 Please login with USER and PASS first.
ftp> send C:\Temp\price.rar
ftp> quit
221 Goodbye.

И что на этот раз неправильно?
 
Зайди командой ftp на свой сервер вручную и запиши на бумажку точную последовательность всего, что вводишь, включая пустые строки, если таковые потребуются. Эту последовательность и занеси в свой текстовик-сценарий для -s. Это будет сценарий именно для работы с данным конкретным сервером.
 
Попробовал отправить ручками файл price.rar на FTP - сервер , отправляется.
C:\WINDOWS\system32>ftp
ftp> open 10.10.10.10
Связь с 10.10.10.10.
220 Gene6 FTP Server v3.10.0 (Build 2) ready...
Пользователь (10.10.10.10:(none)): price
331 Password required for price.
Пароль:
230 User price logged in.
ftp> put c:\temp\price.rar
200 Port command successful.
150 Opening data connection for price.rar
226 File received ok.
ftp: 96584 байт отправлено за 0,14 (сек) со скоростью 684,99 (КБ/сек).
ftp>


Теперь пытаюсь запустить батник , выдает следующее -

Батник –
@echo off
ftp -n -s:ftp_cmd.txt 10.10.10.10

Сценарий –
USER price
price
put C:\Temp\price.rar
quit

C:\Temp\ftp_Vol.4_Inteleca>ftp_com.bat
Связь с 10.10.10.10.
220 Gene6 FTP Server v3.10.0 (Build 2) ready...
ftp> USER price
331 Password required for price.

530 Login or Password incorrect.
Сбой входа.
ftp> put C:\Temp\price.rar
530 Please login with USER and PASS first.
530 Please login with USER and PASS first.
ftp> quit
221 Goodbye.
 
2 9892301
Все таки по описанию перед паролем PASS ставить оказывается нужно
Вот почитайте http://www.g6ftpserver.com/manuals/ru/
Попробуйте еще раз с USER и PASS в первых двух строках и проверьте, что-бы имя пользователя и пароль были введены верно, у меня был случай когда после имени пользователя стоял 1 пробел и подключиться не удавалось...
 
Вроде как заработало

Батник -
@echo off
ftp -s:ftp_cmd.txt -n

Сценарий ftp_cmd.txt
open 10.10.10.10
USER price price
binary
quote PASV
send C:\Windows\Temp\Price\price.rar
quit

Результат -

C:\Temp\ftp_Vol.10_fexclub.net>ftp_cmd.bat
ftp> open 10.10.10.10
Связь с 10.10.10.10.
220 Gene6 FTP Server v3.10.0 (Build 2) ready...
ftp> USER price price
331 Password required for price.
230 User price logged in.
ftp> binary
200 Type set to I.
ftp> quote PASV
227 Entering Passive Mode (10,10,10,10,254,105)
ftp> send C:\Windows\Temp\Price\price.rar
200 Port command successful.
150 Opening data connection for price.rar
226 File received ok.
ftp: 1211467 байт отправлено за 32,45 (сек) со скоростью 37,33 (КБ/сек).
ftp> quit
221 Goodbye.
 
http://support.microsoft.com/kb/96269/ru
 
Добрый день!
Помогите справиться с написанием bat файлов на прием и на отправку файлов на Ftp. ftp-менеджер в данном случае не актуален. А принимать и отправлять файлы вручную надоело :(

Файл(ы) М:\mail_s\*.rar
Отправить на ftp 127.0.0.1 в каталог incoming/mail_in/  (авторизация только по логину) Сверить отправленный файл(ы) на ftp с тем(и) что в М:\mail_s\
И если происходит совпадение (размер, контрольная сумма) то этот файл(ы) можно удалить c диска.

Задача второго bat файла, скачать файл(ы) с ftp.
Скачать incoming/mail_out/*.rar  
Сохранить в M:\mail_r\
Провести сравнение, и если скачивание файла произошло успешно. То его можно удалить с ftp
Страницы: 1
Читают тему