У меня есть несколько непосредственных проблем, которые я вижу.
Первое - это использование неправильной косой черты в вашей команде mkdir
(именно она вызывает вашу конкретную ошибку). Должно быть:
mkdir c:\dtmp
Вторая проблема заключается в том, что вы должны добавлять большинство этих команд в сценарий FTP:
ECHO USER username > script.ftp
ECHO PASSWORD password >> script.ftp
ECHO cd Directories-files >> script.ftp
ECHO lcd C:/dtmp >> script.ftp
ECHO binary >> script.ftp
ECHO prompt n >> script.ftp
ECHO get main.py >> script.ftp
Как у вас есть, каждое эхо заменяет файл, поэтому скрипт будет состоять из одной строки get main.py
, которая не будет работать, потому что вы не вошли в систему.
В-третьих, поскольку вы входите в в сценарии, вы должны также отключить автоматический вход в систему, используя опцию -n
для ftp (хотя я вижу, что это упоминается в комментарии после посмотреть):
ftp -n -v -s:script.ftp domain.lt
Еще один момент, на который следует обратить внимание, это тот факт, что некоторые FTP-клиенты не имеют команды PASSWORD, они предоставляют ее в строке USER. Поэтому попробуйте изменить:
ECHO USER username > script.ftp
ECHO PASSWORD password >> script.ftp
до:
ECHO USER username password > script.ftp
(и, конечно, правильность имени пользователя и пароля).
В противном случае , просто запустите сеанс FTP без -s
и посмотрите, что происходит, введя каждую из команд FTP по отдельности:
C:\Pax> ftp -n wopr.dod.gov
Connected to wopr.dod.gov.
220-FTPD DOD FTP at WOPR.DOD.GOV, 07:28:59 on 2011-08-19.
220 SHALL WE PLAY A GAME?
ftp> user sfalken joshua
331 Send password please.
530 PASS command failed
Login failed.
ftp> bye
221 Quit command received. Goodbye.