强烈向大家推荐一个好网站,【我要自学网】,教程由在校老师录制,有办公会计、平面设计、室内设计、机械设计、网页编程、影视动画等教程.....让你足不出门,都可以体验学校的专业教育!
目标ftp服务器是一个非标准端口的ftp
1.通过shell登录
ftp //shell下输入ftp命令,进入到ftp提示符
open IP PORT //IP ,PORT对应为服务器的IP和端口号
或者直接使用一条语句
ftp IP PORT
2.多文件下载(对目录无效)
如:下载目录下的所有文件(子目录是无法下载下来的)
mget *
这样操作,下载每个文件都会提问,每次都要输入一个y
要去掉提问,就要先输入
prompt off
3.解决:ftp命令行不支持目录下载,通过wget得到解决
wget ftp://IP:PORT/* --ftp-user=xxx --ftp-password=xxx -r
wget -r -nH -P/webapp/ ftp://172.31.1.1:21/* --ftp-user=ftpuser --ftp-password=ftpuser
注:
星号*必须有,否则下载下来的就一个文件index.html
-r参数就是用来目录下载的,递归下载
-nH不包含主机文件夹
-P 下载到指定目录
更多关于wget命令的资料请参考:
http://www.hnlyyk.icoc.cc/nd.jsp?id=20&_np=0_350_8
http://blog.csdn.net/zyc_reg/article/details/42778707
下面是一段ftp多文件下载上传的shell脚本
ftp server: 192.168.0.100:2121
User/PWD : test/ 2009
到OUTBOX下下载所有的文件(不包括文件夹),并将test.txt上传到INBOX
内容如下
#!/bin/bash
cd /home/ftptmp/
ftp -v -n 192.168.0.100 2121 <