我正在运行一个磁盘空间有限的 Amazon EC2 实例。我有一个非常大的文件夹,需要通过 FTP 传输到本地计算机,最好不要创建中间 tar 文件,因为可能没有足够的磁盘空间。
我可以使用管道吗?
笔记虽然 FTP 不是传输文件的最佳方式,但在这种情况下是我唯一的选择。
答案1
除了基本程序之外,几乎可以使用任何 FTP 客户端ftp
。
-
wget -r ftp://[email protected]/path/to/directory
请记住,该
-r
选项的默认最大深度为 5。您可以使用-l
它来增加它。 使用远程传输协议:
open [email protected] mirror /path/to/directory
使用网络文件传输协议:
open -u username example.com get -R /path/to/directory
或者它的
ncftpget
命令:ncftpget ftp://[email protected]//path/to/directory
或者,将 FTP 服务器安装为目录并像访问任何其他目录一样访问它。有几个保险丝FTP 的文件系统。
AVFS:
mountavfs cat file_containing_your_password >~/.avfs/#ftp_ctl:[email protected]/password cp -Rp ~/.avfs/#ftp:[email protected]/path/to/directory .
-
mkdir ~/example.com curlftpfs -o user=username example.com ~/example.com cp -Rp example.com/path/to/directory .
答案2
对于这种传输,FTP 可能不是您的最佳选择。使用rsync
orscp
可能会更有效。尝试类似的方法:
scp -r user@host:folder .
如果您需要从服务器获取更新,那么rsync
应该工作得更好。
编辑:如果您无法使用 FTP,请使用递归wget
命令,或者获取支持递归获取的 FTP 客户端。