我正在寻找一个Bash脚本来将一个简单的ls命令输出从我的FTP服务器重定向到我的Linux上的一个文件。
这里按照一步一步的命令来说明我想要的脚本。可以在没有用户/密码的情况下访问FTP站点,因此当提示时,我输入用户为anonymous,密码为空。
ftp <FTP_SERVER>
Connected to <FTP_SERVER> (IP_ADDRESS).
220 Microsoft FTP Service
Name (<FTP_SERVER>:root): anonymous
331 Anonymous access allowed, send id
我在Linux上运行了一个FTP脚本,它正在失败。下面是脚本:
/usr/bin/ftp -v -i -n my.ftp.server << cmd
user ftpuser password
binary
ls
<some other commands here>
quit cmd
它返回一个错误:
421 Service not available, remote server has closed connection
Not connected.
奇怪的是,如果我在命令行/usr/bin/ftp my.ftp.server中输入了这个命令,它会询问用户名
我可以在FTP程序中访问本地主机上的文件,但是帐户是锁定的,所以当我可以看到它们并在浏览器中查看本地主机时,我不能编辑、下载或上传任何文件。
我在http://www.unixtutorial.org/2009/05/ubuntu-ssh-how-to-enable-secure-shell-in-ubuntu/上解释过,我在ftp程序中甚至无法访问本地主机,因此我设置ssh具有以下积极的结果。
ssh localhost
The authenticity of host 'localhost (127.0.0.1)' can't be established.
ECD