如何复制远程服务器中的文件/maindir/fil1.txt
到子目录/maindir/subdir/file1.txt
。我使用 SFTP 实现paramiko
。但它总是检查要复制的本地路径。
filename_full_path='/maindir/fil1.txt'
destfilename_full_path='/maindir/subdir/file1.txt'
sftp.put(filename_full_path, destfilename_full_path)
如何告诉SFTP本地路径也在远程主机中?
核心SFTP协议不支持复制远程文件。
有草稿copy-data/copy-fileSFTP 协议的扩展.
但在最广泛使用的 OpenSSH SFTP 服务器中copy-data
最近得到了支持9.0版本仅有的。其他支持扩展的服务器是ProFTPD mod_sftp和 Bitvise SFTP 服务器。
因此,即使 Paramiko 确实支持(它不支持),它也可能对您没有任何用处。
备择方案:
- 下载文件夹并将其重新上传到新位置(纯 SFTP 解决方案)
- Use
cp
“exec”通道中的命令(不再是 SFTP,需要 shell 访问) – 使用SSHClient.exec_command.
- 很多错误copy and move。支持将文件移动到另一个文件夹。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)