从FTP服务器下载所有文件

时间:2010-06-09 04:46:27

标签: linux ftp debian

我需要将所有内容从FTP服务器下载到托管在不同服务器上。我只有shell访问我正在下载文件的服务器。如何使用Linux FTP命令下载每个文件,在此过程中创建它们所需的目录?

3 个答案:

答案 0 :(得分:64)

以这种方式使用wget(m用于镜像):

wget -m ftp://username:password@ip.of.old.host

如果您的用户名或密码包含特殊字符,则可能需要使用以下格式:

wget -m --user=username --password=password ftp://ip.of.old.host

或者,我发现this guide向您展示了如何在Debian中使用ncftp进行操作。如果尚未安装ncftp,则需要root访问新服务器。

简而言之:

sudo apt-get install ncftp
ncftpget –T –R –v –u "ftpuser" ftp.nixcraft.net /home/vivek/backup /www-data

答案 1 :(得分:1)

某些FTP服务器允许通过使用.tar或.tgz后缀名称来下载整个目录。然后,服务器创建该目录的存档。

答案 2 :(得分:1)

另一种方法是使用ftp。这是一个使用ftp的示例shell脚本:

#! /bin/bash

ftp -n << 'EOF'
open ftp.your_ftp_host.com
quote USER your_username_here
quote PASS your_password_here
cd gets
prompt no
mget * .
bye
EOF