我脚本自动ftp脚本。
抛出错误:
The syntax of the command is incorrect.
User (domain.lt:(none)):
Error reading password.
Login incorrect.
Login failed.
代码:
@ECHO OFF
mkdir C:/dtmp
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
:: Use the temporary script for unattended FTP
:: Note: depending on your OS version you may have to add a '-n' switch
FTP -v -s:script.ftp domain.lt
:: For the paranoid: overwrite the temporary file before deleting it
TYPE NUL >script.ftp
DEL script.ftp
GOTO End
:End
答案 0 :(得分:1)
我可以看到一些直接的问题。
第一种是在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
你拥有它的方式,每个echo都会替换该文件,因此脚本最终会由单行get main.py
组成,由于你还没有登录,因此无法正常工作。
第三,由于您在脚本中登录,因此您应该通过使用ftp的-n
选项来禁用自动登录(尽管我在评论中看到了这一点)仔细看后):
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
(并确保您的用户名和密码当然是正确的)。
失败,只需启动一个没有-s
的FTP会话,并通过单独输入每个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.
答案 1 :(得分:0)
尝试以下
ftp -n wopr.dod.gov
用户sfalken
通过约书亚
再见
答案 2 :(得分:0)
在创建FTP脚本文件时,请注意用户/密码的尾随空格,例如
ECHO USER用户名> script.ftp
应该是: ECHO USER用户名> script.ftp