从 FTP 服务器下载所有文件 [关闭]
Posted
技术标签:
【中文标题】从 FTP 服务器下载所有文件 [关闭]【英文标题】:Downloading all files from an FTP Server [closed] 【发布时间】:2011-03-01 11:53:16 【问题描述】:我需要将所有内容从 FTP 服务器下载到托管在不同的服务器上。我只能访问我将文件下载到的服务器。如何使用 Linux FTP 命令下载每个文件,并在此过程中创建它们所需的目录?
【问题讨论】:
【参考方案1】:以这种方式使用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
【讨论】:
谢谢。实际上,我在看到这个之前就自己发现了它。前五次未使用正确的 Google 搜索字词。 如果您收到“端口错误”错误消息,您可能有一个电子邮件地址作为用户名(互联网变得越来越奇怪)并且 @ 使 wget 感到困惑。试试: wget -m --user some.email@example.com --password myPassword example.com 当密码末尾有“@”时,这不起作用。有其他选择吗?【参考方案2】:另一种方法是使用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
【讨论】:
此解决方案不获取子目录内容【参考方案3】:一些 FTP 服务器允许下载整个目录,方法是使用 .tar 或 .tgz 作为后缀。然后服务器会创建该目录的存档。
【讨论】:
以上是关于从 FTP 服务器下载所有文件 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章