linux命令行下的ftp多文件下载和目录下载

目标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

注:

星号*必须有,否则下载下来的就一个文件index.html

-r参数就是用来目录下载的

 

附:

一个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 <<EOF

user  test  2009

binary

cd OUTBOX

prompt

mget *

cd ..

cd INBOX

put test.txt

close

bye

EOF

 

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: