通过 FTP 复制目录的最简单方法

通过 FTP 复制目录的最简单方法

我想复制通过命令行从 Mac 连接到的 FTP 服务器上的目录

假设我有file。我希望将files2所有的file子目录和文件都放在与原始目录相同的目录中。实现这一目标的最简单方法是什么?

编辑:

使用mget并且mput您可以下载所有文件并将它们再次上传到不同的文件夹中,但这绝对不是我想要/需要的(我开始这个问题试图避免从桌面客户端使用此下载上传方法重复)

答案1

你拥有的不是一个unix命令行,你拥有的是一个FTP会话。 FTP 主要用于上传和下载文件,而不是用于一般文件管理,并且不允许您在服务器上运行任意命令。特别是,据我所知,无法在服务器上触发文件复制:您所能做的就是下载文件,然后以不同的名称上传。

某些服务器支持 FTP 协议的扩展,并且这些扩展之一有可能允许您复制远程文件。尝试help siteremotehelp查看服务器支持哪些扩展。

如果您想要 unix 命令行,则需要通过 rsh 进行远程 shell 访问(r表情ell)或更常见的是 21 世纪的 ssh(s埃库尔呃)。如果这是一个 Web 主机,请检查它是否提供 ssh 访问。否则,请联系系统管理员。但如果答案是否定的,请不要感到惊讶:在某些多用户设置中,命令行访问将是一个安全漏洞,因此不提供它可能有合理的原因。

答案2

以下是如何做到这一点FTP:

# lftp ftp_host
user ftp_user ftp_pass
mirror source target (download entire directory tree)
mirror -R source target (reverse mirror; upload entire directory tree)

答案3

现在这是错误的,但保持不删除,这样评论树就不会丢失

cp复制文件和目录;你可以给它一个-r标志,让它递归地复制所有内容。从包含以下内容的文件夹中file

$ cp -r file files2

答案4

远程FTP支持高于 FTP 协议提供的更高级别的命令,例如它的mirror命令提供您想要的命令。

还有其他具有类似功能的程序;网站复制另一个例子。

相关内容