我试图确定一些FTP服务器在脚本中需要一个空行的原因如下:
open server.com username ftp_commands bye
请参阅用户名凭证后所需的空行。
来自batch file的FTP示例
另外引用一样: http : //newsgroups.derkeiler.com/Archive/Comp/comp.sys.ibm.as400.misc/2008-05/msg00227.html
还在这里讨论:
archive.midrange.com/midrange-l/200601/msg00048.html“我正在观察的行为与我没有指定密码login相同。 与一个答案指的是我们的相同的修复… archive.midrange.com/midrange-l/200601/msg00053.html和archive.midrange.com/midrange-l/200601/msg00065.html
注意:根据我的经验,FTP问题吸引了不恰当的回应。 无可否认,FTP已经过时,但是许多客户端仍然有旧系统,他们不能升级或replace。 这里不应该讨论其原因。 这个问题的意图是邀请积极的回应。 如果您不同意以上内容,请不要回复。 如果您从未遇到同样的问题,请不要回复。
我怀疑这可能仅限于从Windows机器执行的FTP脚本,但被告知这经常发生,并与许多不同的服务器。
我特别感兴趣的是要理解可能导致这种情况的原因,因为我有一个真实世界的生产系统示例,突然要求将此作为解决方法,在运行多年后没有问题。 服务器属于第三方,他们声称没有改变。 服务器细节未知,无法确定。
任何人遇到相同的帮助或鼓励,将不胜感激。
PS。 对不起,许多单词和引用痛苦的答复,但我已经问服务器故障和其他地方类似的问题,不幸的是回到膝上跳跃响应FTP和回应者辩论的问题的有效性。 如果我对这个问题有了更好的理解,我真的不会问,或者在线重新发布这个问题。 我知道有谁看过这个问题,但不知道是什么原因造成的。
我担心这个问题会再次变成另一个不相干的讨论。 请问,我很好地问:如果你没有遇到过类似的问题,请不要回复。
进一步编辑:请不要build议更改产品。 问题不在于空行要求。 我们知道这解决了这个问题。 问题是无法解释首先空白的原因。 有一点差别,但是要回答这个问题的关键点。
你的脚本使用什么行结尾? 尝试使用替代forms(如果他们是Windows,使用Unix,Unix如果他们是Windows)。
你使用的是什么FTP客户端? 请考虑使用NCFTP: http ://www.ncftp.com/ncftp/。 它有更好的脚本支持,然后大部分内置于操作系统的客户端。
我也面临类似的问题。 我觉得我的FTP脚本中很less有ftp命令被跳过。 但一段时间后,我发现我的脚本运行时,“交互模式”为“开”..我连接到FTP服务器后,在scritpclosures它,它似乎做了魔术…如果您仍然遇到这个问题,试试吧。
PS:通过closures交互模式,我不需要给空行
在脚本中添加空白行似乎是FTP脚本中跳行的可接受的解决scheme。 不幸的是,在论坛等方面没有太多的参考文献,要解决这个问题。 如果没有可以主动debugging违规会话的FTP协议专家的帮助,也不可能确定原因。 我希望这个问题能够得到现实世界中对类似事件和原因的确认的回答,但必须接受这种情况不会发生。 同样考虑到在公开论坛上提出这样一个问题的典型回答,我甚至可以说,如果没有相当大的商业努力,就不会在这个问题上做出回应。
这个问题因此被回答如下:原因到FTP脚本跳线不能被识别,但是它可以很容易地通过添加一个空行到find跳线的脚本来解决。
这是从我记忆中暗淡的凹痕中出来的,因为我没有这样的脚本命令行FTP,因为90年代…
在FTP协议会话中,将用户名发送到FTP服务器后,服务器可能会要求input密码, 即使用户名表示应使用匿名FTP (即发送的用户名是ftp或anonymous )。 在这种情况下,服务器请求密码,但忽略它。 因此,在驱动命令行FTP客户端的脚本中,将使用空行来发送空密码。 如果服务器不要求input密码,那么空行就什么也不做,是无害的。
你必须使用out-of-box-os ftp客户端吗?
否则,您可能需要查看NcFTP客户端产品。 我只是最近自动化了一个ftp下载过程,而且不得不自动化通用ftp客户端的想法并不令人满意。
NcFTP客户端有一个名为ncftpbatch的工具,它允许ftp进程的自动化,而不需要做所有自动执行通用ftp的手动工作。
http://www.ncftp.com/ncftp/doc/ncftpbatch.html
编辑:错过了有关build议不同产品的部分。 没关系我的post。