2009-10-21 20 views
11

Tôi đã tìm kiếm một mô-đun cho phép tôi thực hiện các chức năng SSH/SFTP trong python mà không sử dụng POPEN để thực hiện thủ công. Có thứ gì như thế này không? Tôi đã không tìm thấy bất kỳ thông tin thực tế về điều này, cảm ơn!Mô-đun SSH/SFTP Python?

+1

paramiko? http://stackoverflow.com/search?q=[python]+ssh+sftp – jfs

Trả lời

1

Tùy thuộc vào những gì bạn đang tìm kiếm để làm qua ssh, bạn cũng có thể được hưởng lợi từ xem thư viện pexpect: http://www.noah.org/wiki/pexpect

2

Đối với SFTP, bạn có thể sử dụng pysftp, đây là lớp bọc mỏng trên SFTPClient của paramiko ()).

Ví dụ để tải về một tập tin:

import pysftp #pip install sftp 
import sys 

hostname = "128.65.45.12" 
username = "bob"  
password = "123456" 

sftp = pysftp.Connection(hostname, username=username, password=password) 

sftp.get('/data/word_vectors/GoogleNews-vectors-negative300.txt', preserve_mtime=True) 
print('done') 
0

Có một wrapper paramiko, ssh_decorate mà sẽ chạy mã python từ xa dành cho bạn:

from ssh_decorate import ssh_connect 
ssh = ssh_connect('user','password','server') 

@ssh 
def python_pwd(): 
    import os 
    return os.getcwd() 

print (python_pwd()) 

Không thể được đơn giản

+0

** Bạn có thể sử dụng mô-đun paramiko python: ** http://docs.paramiko.org/en/2.3/ ** Ngoài ra, bạn có thể sử dụng mô-đun netmiko cho kết nối ssh. [https://pynet.twb-tech.com/blog/automation/netmiko.html] –

+0

Vui lòng đọc lại câu trả lời của tôi, tôi đề xuất 'paramiko'. tất cả 'ssh_decorate' hiện đang chạy' python' từ xa thông qua 'ssh' bằng cách sử dụng cú pháp đơn giản hơn paramiko –