首页 > 代码库 > linux批量下载FTP服务器文件

linux批量下载FTP服务器文件

由于在vmwarem内做一个ORACLE测试环境,要从宿主机上复制ORACLE源安装文件。方法有很多,这次就想用3cdaemon把宿主机(windows)做TFTP服务器端,LINUX做客户端下载的方式实现。居然没那么容易。

  1.用FTP登录,发现get只能下载单个文件,mget可以下载多个文件,但不能下载目录!没法下载几个G大小N个子目录的文件啊。

   2.wget -r -nH --ftp-user=username --ftp-password=password 

  如:wget -r -nH ftp://192.168.1.1:21/database/* --ftp-user=root --ftp-password=123456

   以为可以了,结果一检查,只下载了100多M,100多个文件,而源文件有1777个文件,2.47G!

   根本不知道哪里有问题!

 3.网上有高人指出另外的下载方法:用lftp!!!

   于是赶紧安装使用。

   [root@rac1 Packages]# rpm -ivh lftp-4.0.9-1.el6.x86_64.rpm 

   warning: lftp-4.0.9-1.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY

    Preparing...                ########################################### [100%]

   1:lftp                   ########################################### [100%]

  [root@rac1 tools]# lftp ftp://root:123456@192.168.1.1

lftp root@192.168.1.1:~> dir                    

drwxrwxrwx 1 owner group         0 May 02 21:52 .

drwxrwxrwx 1 owner group         0 May 02 21:52 ..

-rwxrwxrwx 1 owner group    193328 May 02 21:52 compat-libstdc++-33-3.2.3-69.el6.i686.rpm

-rwxrwxrwx 1 owner group    187476 May 02 21:52 compat-libstdc++-33-3.2.3-69.el6.x86_64.rpm

drwxrwxrwx 1 owner group         0 Apr 02 23:25 database

drwxrwxrwx 1 owner group         0 May 02 21:53 dbatools

lftp root@192.168.1.1:/> mirror database

Total: 829 directories, 1777 files, 0 symlinks                                                                                            

New: 1777 files, 0 symlinks

2656496474 bytes transferred in 641 seconds (3.95M/s)

终于成功了!!!

注意:1.使用前先进入到要放置文件的目录位置。这样确保下载到指定 目录 。

           2.不要使用匿名方式直接登录:lftp ftp://192.168.1.1 否则会找不到你设置的服务器端目录。而是些其他乱七八糟的目录。

linux批量下载FTP服务器文件