基本上我想使用SFTP将文件夹从远程位置复制到本地计算机。由于SFTP是文件传输协议,因此无法复制文件夹。所以我想首先压缩文件夹,然后复制zip文件。这可能吗?
答案 0 :(得分:1)
实际上取决于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
答案 1 :(得分:0)
没有。这不可能。 SFTP仅用于传输文件(也列出文件和简单修改),但是要压缩文件,您需要在服务器(zip
)上运行外部应用程序,这超出了SFTP协议的范围。为此,您需要ssh
作为安全shell。