【发布时间】:2016-06-12 10:41:06
【问题描述】:
基本上,我想使用 SFTP 将文件夹从远程位置复制到本地计算机。由于 SFTP 是一种文件传输协议,因此无法复制文件夹。所以我想先压缩文件夹,然后复制压缩文件。这可能吗?
【问题讨论】:
基本上,我想使用 SFTP 将文件夹从远程位置复制到本地计算机。由于 SFTP 是一种文件传输协议,因此无法复制文件夹。所以我想先压缩文件夹,然后复制压缩文件。这可能吗?
【问题讨论】:
实际上,这取决于 SFTP 服务器。
某些服务器允许您在某些事件发生时执行自己的服务器端脚本;因此,您可以编写一个服务器端脚本来压缩上传的文件,然后在成功的文件传输会话发生时将 zip 存档复制到其他地方。
如果您不想压缩任何内容而只想将文件复制/移动到其他地方,请记住,SFTP 协议实际上确实有一个命令(与 FTP 协议不同) .正如SFTP Extension draft中指定的那样,其实可以使用如下结构告诉SFTP服务器将远程文件复制到服务器的其他地方:
byte SSH_FXP_EXTENDED
uint32 request-id
string "copy-file"
string source-file
string destination-file
bool overwrite-destination
【讨论】:
没有。这不可能。 SFTP 只是传输文件(也包括列表文件和简单修改),但压缩文件需要在服务器上运行外部应用程序(zip),这超出了 SFTP 协议的范围。为此,您需要ssh 作为安全外壳。
【讨论】: