Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Скриптовые языки администрирования Windows (http://forum.oszone.net/forumdisplay.php?f=102)
-   -   [решено] Подключение к ftp из bat-файла (http://forum.oszone.net/showthread.php?t=137725)

Николя 15-04-2009 07:16 1094422

Подключение к 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 1094435

Николя

Создаём текстовый файл:
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

И запускаем батничек...

Николя 15-04-2009 08:35 1094450

Спасибо огромное!
Файлы копируются, все нормально.
Еще бы узнать...
в батнике могу определить путь к файлу, откуда нужно копировать файлы так (путь - это единственная строка в файле 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.... Но, наверное, не совсем верный, или совсем неверный способ...

vmopr 02-02-2011 18:15 1602979

Здравствуйте, уважаемые фурумчане!

испробовал я више описанный метод с одной стороны с позитивным результатом (файл таки копируется)
, но вот с другой стороны остается висеть , кхм, лог чтоли , в командной строке, и зависает вот на чем:

Код:

Связь с 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
не доходит.. почему так, знает кто?

так же вопрос следующего характера можна ли копировать файл с переиминованием его в [дата].* ?

vmopr 04-02-2011 08:42 1604064

вопрос снимается, по сути нада просто немного подождать, всем спс

zhyvchik 24-02-2011 17:52 1620908

А как можно заставить mput копировать множество папок из папки на ftp, с критерием отбора по имени, скажем, p0* ?

Glebunec 12-03-2014 16:24 2322651

Цитата:

Цитата Maza Faka
cd Image mput »

Здравствуйте, подскажите пожалуйста, что именно значит данная строка и следующая за ней команда???

alv1r 24-03-2014 11:37 2327839

Цитата:

Цитата Maza Faka
прейти в папку
cd Image
загрузить все файлы *.bmp на сервер
mput C:\MyFolder\*.bmp
выйти
quit »

mput - загружает несколько файлов на фтп
справка по команде mput

idlazarev_alex@vk 27-03-2014 12:54 2329301

Не подскажите, пробую таким же способом, но появляется ошибка:
Код:

500 I won't open a connection to 0.0.0.0 <only to "адрес>
425 No data connection


Опиум 28-03-2014 11:38 2329683

осмелюсь предложить для аплоада утилиту ncftpput
http://www.ncftp.com/ncftp/doc/ncftpput.html

alv1r 31-03-2014 15:09 2330966

раз уж пошло такое дело, вот еще вариант: wput это такой wget, только для пакетного скачивания

pyrkin_vanya 22-05-2014 10:44 2354251

Всем привет. Подскажите пожалуйста. Нужно написать батник чтобы он соединялся с FTP сервером и проверял нужную папку на наличие в ней файла. Если такой есть, то копировать его на жесткий диск. Затем чтобы запускался еще один батник (чтобы 1С обновлялась и создавалась копия). И следом чтобы эта копия копировалась в нужную папку на FTP. Каким образом можно это сделать?

Iska 22-05-2014 12:01 2354285

Цитата:

Цитата pyrkin_vanya
Каким образом можно это сделать? »

Сесть и написать. Только таким может быть ответ, поскольку Вы не указали ни единой конкретной детали.

pyrkin_vanya 22-05-2014 13:26 2354337

Пример хотелось бы. Написать знаний не хватает. Описания найти не могу нигде. Примеры из инета под себя не могу переделать. Можете дать пример?

yuriy.syakov@fb 19-01-2015 10:14 2458236

Добрый день.
Извините за некропост.
А возможно, что бы не плодить 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 логин и пасс соответственно. И можно ли как-то зашифровать пароль, что бы он был не в явном виде?

Iska 19-01-2015 10:27 2458240

yuriy.syakov@fb, два раза нет. Можно создавать условный «ftp_command.txt» из того же пакетного файла, из которого будет затем вызываться «ftp.exe».

yuriy.syakov@fb 19-01-2015 10:40 2458245

Iska, Мда, это плохо :(
И еще такой вопрос. файл ftp_command.txt должен лежать там же, где и вызываемый *.bat-файл?

Iska 19-01-2015 10:57 2458254

Цитата:

Цитата yuriy.syakov@fb
файл ftp_command.txt должен лежать там же, где и вызываемый *.bat-файл? »

Необязательно. Если не указываете путь к условному «ftp_command.txt» — будет произведён его поиск в текущем каталоге (который может совпадать с тем каталогом, в котором находится пакетный файл). А можно указывать путь, как относительный, так и абсолютный.

yuriy.syakov@fb 19-01-2015 11:13 2458259

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

Вроде файл такой же, как писал 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] [узел]


Iska 19-01-2015 13:07 2458312

Цитата:

Цитата yuriy.syakov@fb
Код:

MyPassword
MyLogIn

»

А не наоборот ли?!

yuriy.syakov@fb 19-01-2015 13:22 2458322

Iska, Оу, Не правильно сюда скопипастил. В enter.txt порядок верный:
Код:

MyLogIn
MyPassword
cd 1C
mput C:\Users\sya\Desktop\Documents.rar


Iska 19-01-2015 13:47 2458334

Ясно.

Но в логе ошибка аутентификации:
Цитата:

Код:

Связь с 192.168.5.3.
220 (vsFTPd 3.0.2)
Пользователь (192.168.5.3:(none)):
331 Please specify the password.

530 Login incorrect.
Сбой входа.


«Ручками» как вводите — просто «MyLogIn», Enter, «MyPassword», «Enter»? Безо всяких предварительных «USER», «PASS»…? Кириллицы ни там, ни там нет?

yuriy.syakov@fb 19-01-2015 13:56 2458339

Ни в пароле, ни в логине нет кириллицы.
Цитата:

Цитата Iska
«Ручками» как вводите — просто «MyLogIn», Enter, «MyPassword», «Enter» »

Да, все верно.
Сейчас скопировал из enter.txt логин и пароль, вставил в консоль - зашло.
Шо за бред?
Поставил в *.bat-файл свой домашний IP, на котором у меня крутится FTP-сервер. Прописал в enter.txt данные от моего сервера, запустил bat-зашел.
Вернул в bat и txt все как было, запустил - все зашлось и скопировалось 0_о
Код:

C:\Users\sya\Desktop>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.

230 Login successful.
ftp> cd 1C
250 Directory successfully changed.
ftp> mput C:\Users\sya\Desktop\Documents.rar
C:\Users\sya\Desktop\Documents.rar:
ftp>


aiv3006 14-06-2015 10:20 2518397

Цитата:

Цитата Опиум
осмелюсь предложить для аплоада утилиту ncftpput
http://www.ncftp.com/ncftp/doc/ncftpput.html »

Сам покупай !
Цитата:

NcFTPd не свободное программное обеспечение ( но, пожалуйста, обратите внимание, что мы предлагаем бесплатные лицензии для персонального использования и высших учебных заведений ) .

Лицензионный сбор зависит от количества одновременных соединений FTP вы хотите , чтобы ваш сервер поддерживает . Плата за - сервер US $ 199.00 в течение 51 или более пользователей, так и для 50 или меньше пользователей, вы получите $ 70 скидки , что делает его просто US $ 129.00 для небольшого сервера .

Вы можете скачать и использовать NcFTPd для 30 - дневного периода оценки бесплатно . После 30 дней, вы должны либо зарегистрировать ПО или удалить NcFTPd из вашей системы .

Зарегистрированные пользователи имеют право на бесплатные обновления на новые версии , загрузив и повторно применять информацию о лицензиях . Зарегистрированные пользователи имеют право на бесплатную техническую поддержку по электронной почте.

Iska 14-06-2015 11:22 2518413

Цитата:

Цитата aiv3006
Сам покупай ! »

aiv3006, речь шла про клиент:
Цитата:

NcFTP Client (also known as just NcFTP) is a set of FREE application programs implementing the File Transfer Protocol (FTP).
а вовсе не про сервер.

Freddy1984 01-09-2015 21:05 2548425

Здравствуйте! Нужно сделать всё тоже самое (по всему вышеописанному в принципе всё предельно понятно), но подключиться к удаленному FTP именно с TLS шифрованием и по 21 порту.
Не подскажете что в батнике прописать, и вообще возможно ли это?
Спасибо.

Soarer 03-04-2017 05:57 2725634

Цитата:

Цитата Freddy1984
... но подключиться к удаленному FTP именно с TLS... »

WPUT
Main Features: TLS-encryption...

Iska 03-04-2017 06:07 2725635

Soarer, сообщения #11 было недостаточно, надо обязательно повторить?


Время: 22:08.

Время: 22:08.
© OSzone.net 2001-