使用paramiko的scp不起作用-ssh works fin

2024-04-25 21:25:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我已经能够在远程服务器中使用ssh并发出命令。现在我想从远程服务器scp文件,但这似乎是不可能的。我对python和Paramiko完全不熟悉。错误是在我的该死的windows本地目录中拒绝了权限。这些文件应该是Mac电脑的。还有其他真正简单的例子可以用来从远程Linux机器到本地Windows机器的scp文件吗?

import paramiko


hostname = '192.xx.1.xx'
password = 'pop123'
username = "husbad2"
port = 22

mypath='C:\\Users\\handsonexpert\\Documents'
remotepath='/Users/ihussain/testdir/file3.txt'


t = paramiko.Transport((hostname, 22))
t.connect(username=username, password=password)
sftp = paramiko.SFTPClient.from_transport(t)
sftp.put(mypath, remotepath)

Tags: 文件命令服务器机器paramiko远程usernamepassword
2条回答

这里不是使用scp,而是使用SFTPSFTPClient)。

如果您设置使用scp,那么可以看看这个paramiko scp客户机,这里有一个如何使用它的示例here

除此之外,出于一般的安全利益和编程风格,不要硬编码您的密码和用户凭据,尤其是永远不要在这样的公共论坛上发布它们。我们不需要它们,你也不需要发布它们。

要将文件从远程主机检索到本地目录,请执行以下操作:

......
localpath='C:\\Users\\handsonexpert\\Documents\\file3.txt'
remotepath='/Users/ihussain/testdir/file3.txt'
......
sftp.get(remotepath, localpath)

相关问题 更多 >