如何在python中将文件夹从Server(linux)复制到本地机器(windows)。
我尝试使用给定的代码,但它没有用
from distutils.dir_util import copy_tree
copy_tree("source_path","destination_path")
我使用copy_tree命令复制本地计算机上的文件夹,但是当我使用相同的命令将文件夹从服务器复制到本地计算机时,它不起作用。
还有其他方法吗? 还是需要改变?
您需要使用SSH,SCP或SFTP将文件从主机传输到主机。
我做了很多,喜欢使用SSH和SCP。您可以使用OpenSSH在Windows机器上运行SSH服务器。以下是WinSCP的一组很好的说明:https://winscp.net/eng/docs/guide_windows_openssh_server。
我建议使用Paramiko for SSH with Python。这是一个很好的答案,展示了如何使用python:https://stackoverflow.com/a/38556344/634627。
如果您设置OpenSSH,您也可以使用SFTP执行此操作,有时我发现这更适合SCP。以下是一个很好的答案,展示了它是如何工作的:https://stackoverflow.com/a/33752662/634627
诀窍是让OpenSSH在Windows主机上运行并设置SSH密钥,以便您的服务器可以对您的localhost进行身份验证。
如何从服务器@Mike获取本地机器的路径
使用像C:\Users\mghen\Documents\myfile.csv这样的绝对路径
在以下情况下使用copytree应该有效:
服务器上的文件夹作为客户端可供Windows机器使用。
你有足够的访问权限。
您使用原始字符串作为Windows路径来防止字符串解释。
广告3:尝试print('c:\test
obot'):
In [1]: print('c:\test
obot')
obot est