Показать полную графическую версию : [решено] Подключение к ftp из bat-файла
Здравствуйте, уважаемые специалисты.
Обращаюсь за помощью.
На fpt есть каталог Image (из проводника к нему подключаюсь как ftp://192.168.10.165/Image/)
Есть файлы bmp в каталоге D:\Out
Необходимо в bat-файле реализовать следующее:
Подключиться к каталогу Image на ftp
скопировать в него файлы *.bmp
Отключиться от ftp.
Искал по форуму, видел что-то подобное, с использованием файла настроек, где указаны команды для копирования, но не получается разобраться в нем...
Может, кто-то подскажет.
Спасибо заранее!
Maza Faka
15-04-2009, 07:56
Николя
Создаём текстовый файл:
ftp_command.txt
MyLogin
MyPass
cd Image
mput C:\MyFolder\*.bmp
quit
И собственно сам батник:
ftp_put
@Echo Off
ftp -s:ftp_command.txt -i 192.168.10.165
И запускаем батничек...
Спасибо огромное!
Файлы копируются, все нормально.
Еще бы узнать...
в батнике могу определить путь к файлу, откуда нужно копировать файлы так (путь - это единственная строка в файле Flag.txt):
If Exist Touch\Flag.txt (
For /F "Delims=" %%I In (Touch\Flag.txt) Do Set BmpPath=%%~I
Xcopy "!BmpPath!\*.bmp" \\192.168.10.165\Images\ /y
)
(этот кусок использовался в батнике для копирования на локальный компьютер, без ftp)
А можно ли из батника, где я определяю путь к каталогу-источнику, передать этот путь в текстовый файл, чтобы копировать из определенного каталога, который указан в файле Flag.txt?
Или как-то другим способом это делать?
Как предположение - сначала в батнике определять путь источника, записывать его в текстовый файл и потом уже копировать на ftp.... Но, наверное, не совсем верный, или совсем неверный способ...
Здравствуйте, уважаемые фурумчане!
испробовал я више описанный метод с одной стороны с позитивным результатом (файл таки копируется)
, но вот с другой стороны остается висеть , кхм, лог чтоли , в командной строке, и зависает вот на чем:
Связь с 10.1.13.30.
220 vsFTPd 2.0.4+ (ext.3) ready...
Пользователь (10.1.13.30:(none)):
331 Please specify the password.
230 Login successful.
ftp> cd test
250 Directory successfully changed.
ftp> mput F:\mssql_backups\*.txt
200 PORT command successful. Consider using PASV.
дальше ничего не происходит, собственно до quit не доходит.. почему так, знает кто?
так же вопрос следующего характера можна ли копировать файл с переиминованием его в [дата].* ?
вопрос снимается, по сути нада просто немного подождать, всем спс
zhyvchik
24-02-2011, 17:52
А как можно заставить mput копировать множество папок из папки на ftp, с критерием отбора по имени, скажем, p0* ?
Glebunec
12-03-2014, 16:24
cd Image mput »
Здравствуйте, подскажите пожалуйста, что именно значит данная строка и следующая за ней команда???
прейти в папку
cd Image
загрузить все файлы *.bmp на сервер
mput C:\MyFolder\*.bmp
выйти
quit »
mput - загружает несколько файлов на фтп
справка по команде mput (http://pic.dhe.ibm.com/infocenter/iseries/v7r1m0/index.jsp?topic=%2Frzaiq%2Frzaiqmput.htm)
idlazarev_alex@vk
27-03-2014, 12:54
Не подскажите, пробую таким же способом, но появляется ошибка:
500 I won't open a connection to 0.0.0.0 <only to "адрес>
425 No data connection
осмелюсь предложить для аплоада утилиту ncftpput
http://www.ncftp.com/ncftp/doc/ncftpput.html
раз уж пошло такое дело, вот еще вариант: wput (http://wput.sourceforge.net/) это такой wget, только для пакетного скачивания
pyrkin_vanya
22-05-2014, 10:44
Всем привет. Подскажите пожалуйста. Нужно написать батник чтобы он соединялся с FTP сервером и проверял нужную папку на наличие в ней файла. Если такой есть, то копировать его на жесткий диск. Затем чтобы запускался еще один батник (чтобы 1С обновлялась и создавалась копия). И следом чтобы эта копия копировалась в нужную папку на FTP. Каким образом можно это сделать?
Каким образом можно это сделать? »
Сесть и написать. Только таким может быть ответ, поскольку Вы не указали ни единой конкретной детали.
pyrkin_vanya
22-05-2014, 13:26
Пример хотелось бы. Написать знаний не хватает. Описания найти не могу нигде. Примеры из инета под себя не могу переделать. Можете дать пример?
yuriy.syakov@fb
19-01-2015, 10:14
Добрый день.
Извините за некропост.
А возможно, что бы не плодить 100500 файлов сделать это все в одном?
Например, в строке ftp -s:ftp_command.txt -i 192.168.5.3
определить функцию "login", а в ней перечислить логин и пасс?
Что-то типа
set enter="test 123456"
ftp -s:enter -i 192.168.5.3
cd test
put *.rar
bye
Где test и 123456 логин и пасс соответственно. И можно ли как-то зашифровать пароль, что бы он был не в явном виде?
yuriy.syakov@fb, два раза нет. Можно создавать условный «ftp_command.txt» из того же пакетного файла, из которого будет затем вызываться «ftp.exe».
yuriy.syakov@fb
19-01-2015, 10:40
Iska, Мда, это плохо :(
И еще такой вопрос. файл ftp_command.txt должен лежать там же, где и вызываемый *.bat-файл?
файл ftp_command.txt должен лежать там же, где и вызываемый *.bat-файл? »
Необязательно. Если не указываете путь к условному «ftp_command.txt» — будет произведён его поиск в текущем каталоге (который может совпадать с тем каталогом, в котором находится пакетный файл). А можно указывать путь, как относительный, так и абсолютный.
yuriy.syakov@fb
19-01-2015, 11:13
Iska,
Просто непонятно, то ли он мой файл не видит, то ли просто не может определить поля и подставить.
Вот что выводит в консоль:
C:\Users\sya>ftp -s:"C:\Users\sya\Desktop\enter.txt" -i 192.168.5.3
Связь с 192.168.5.3.
220 (vsFTPd 3.0.2)
Пользователь (192.168.5.3:(none)):
331 Please specify the password.
530 Login incorrect.
Сбой входа.
ftp> cd 1C
530 Please login with USER and PASS.
ftp> mput C:\Users\sya\Desktop\Documents.rar
C:\Users\sya\Desktop\Documents.rar:
ftp>
Ну и мой файл enter.txt
MyPassword
MyLogIn
cd 1C
mput C:\Users\sya\Desktop\Documents.rar
Вроде файл такой же, как писал (http://forum.oszone.net/post-1602979-4.html) Maza Faka
Логин и пароли существуют и корректны. Вручную, через консоль все вводится.
Пробовал и просто написать ftp -s:enter.txt -i 192.168.5.3 - не помогло.
C:\Users\sya>ftp -s:enter.txt -i 192.168.5.3
ошибка открытия файла макросаenter.txt
Обмен файлами с компьютером, на котором запущена служба
сервера FTP. FTP может использоваться интерактивно.
FTP [-v] [-d] [-i] [-n] [-g] [-s:имя_файла] [-a] [-A] [-x:sendbuffer]
[-r:recvbuffer] [-b:asyncbuffers] [-w:windowsize] [узел]
MyPassword
MyLogIn »
А не наоборот ли?!
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.