2013-12-11 2 views
0

Я пытаюсь загрузить некоторые файлы с помощью командного файла, однако после прочтения строки имени пользователя выдается сообщение «Invalid command».batch file ftp authentication issue

В моем батнике Звоню передачи файлов файлы следующим образом:

ftp -n -s:ftp_download.txt 

мой ftp_download.txt выглядит следующим образом:

open myname.com 
[email protected] 
test 
lcd C:\myDownloads 
cd download_files 
get MY_NEW_FILES_*.xml 
bye 

Однако после [email protected] линии выдается ошибка «Неверная команда 'и, следовательно, сценарий не подключается к моему ftp-серверу.

При проверке подлинности следующим образом:

open myname.com 
user [email protected] test 

я получаю «не подключен» ошибка

Однако, используя это имя пользователя ([email protected]) и пароль (тест) Я до сих пор в состоянии подключитесь с помощью Filezilla.

Я где-то пропустил команду?

+0

Попробуйте ftp'ing вручную, возможно, сервер не требует входа. Что произойдет, если вы отправите 'user [email protected] test' вместо этого? – CodeCaster

+0

имена пользователей, с которыми у меня есть опыт, не используют @domain. Попробуйте выполнить регистрацию в интерактивном режиме с помощью команды «FTP myname.com» и введите имя пользователя.Если это не принято, попробуйте еще раз и используйте 'test' без @ myname.com, чтобы убедиться, что это принято. – foxidrive

+0

анонимный логин не работает. и выход из домена даже не работает в FileZilla. – mathiasb

ответ

1

К тем, как CharlesKSQL, кто может наткнуться на мой вопрос. Вот как я получил его на работу (оказалось, что мне пришлось использовать sftp по какой-то причине, поэтому убедитесь, что он включен на вашем сервере);

Сценарий (ftp_download.txt) содержит следующее:

option batch abort 
option confirm off 
open sftp://<username>:<password>@<host> -hostkey="<fingerprint/key>" 
option transfer binary 
cd <your folder> 
get <some file> 

Если вы не знаете, отпечатков пальцев и/или ключа; вы можете найти их в FileZilla при подключении корыта sftp. Они отображаются во всплывающем окне, которое появляется при первом подключении к вашему серверу, или вы можете щелкнуть маленькую иконку блокировки в строке состояния в правом нижнем углу, когда вы уже подключены.

The Lock-icon in FileZilla

Теперь на самом деле подключения вам потребуется немного программного обеспечения (при использовании Windows) для создания защищенного соединения. Я использовал WinSCP. Вы можете загрузить переносные исполняемые файлы here и разместить их (для удобства использования) в той же папке, что и ваш командный файл. Затем вы можете вызвать исполняемый файл в пакетный файл, добавив параметр:

winscp.exe /script=ftp_download.txt 

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

P.S .: Это было давно, так как я закончил это, он все еще работает, насколько я знаю.

0

Ваш текстовый файл должен выглядеть следующим образом:

open myname.com 
user 
<enter username here> <password here> 
lcd C:\myDownloads 
cd download_files 
get MY_NEW_FILES_*.xml 
bye 

Попробуйте это и посмотреть, если это помогает enter image description here

+0

Это дает ту же ошибку. Однако, когда я помещаю 'user'command, имя пользователя и пароль в одну строку, он больше не выдает неверную командную ошибку, а скорее состояния не подключены. – mathiasb

+0

попробовали запустить команду из DOS и посмотреть, работает ли она? См. Прилагаемый скриншот. Его не ракетостроение – Chelseawillrecover