使用paramiko的scp不起作用 - ssh工作正常

时间:2013-02-19 09:46:01

标签: python linux paramiko

我已经能够在远程服务器中使用ssh和issue命令。现在我想从远程服务器scp文件,但这似乎是不可能的。我对python和Paramiko完全不熟悉。错误是在我的本地目录的darn窗口中被拒绝权限。这些文件应该来自Mac。还有其他非常简单的例子我可以用来将文件从远程Linux机器scp到我的本地Windows机器吗?

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)

2 个答案:

答案 0 :(得分:9)

将文件从远程主机检索到本地目录:

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

答案 1 :(得分:8)

您这里没有使用scp,而是SFTPSFTPClient)。

如果您已开始使用scp,请查看此paramiko scp客户端,有一个如何使用它的示例here

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