paramiko是用來遠程執行命令的模塊,
下面是ssh和scp的的兩個例子
1- ssh
#!/usr/bin/env python
import paramiko
hostname = ''
password = ''
command = 'ls'
username = ""
port = 22
client = paramiko.SSHClient()
# 其中load_host_keys一般配合save_host_keys來使用,
# load_system_host_keys可以指定主機密鑰文件,
# 如果不指定默認就是家目錄下的.ssh目錄下的known_hosts文件。
client.load_system_host_keys()
client.connect(hostname=hostname, port=port,
username=username, password=password)
stdin, stdout, stderr = client.exec_command(command)
print(stdout.read())
client.close()
2- scp
這里是直接把服務器上面的的文件復制下來
#!/usr/bin/env python
import paramiko
hostname = ''
password = ''
source = '/root/tmp.txt' # 服務器上的文件
dest = r'D:\\tmp\\tmp.txt' # 本機的文件
username = ""
port = 22
t = paramiko.Transport((hostname, port))
t.connect(username=username, password=password)
sftp = paramiko.SFTPClient.from_transport(t)
sftp.get(source, dest)
t.close()
3- load_system_host_keys
函數的源碼
def load_system_host_keys(self, filename=None):
if filename is None:
# try the user's .ssh key file, and mask exceptions
filename = os.path.expanduser("~/.ssh/known_hosts")
try:
self._system_host_keys.load(filename)
except IOError:
pass
return
self._system_host_keys.load(filename)
從這里可以看出,
load_system_host_keys
默認從~/.ssh/known_hosts
里面獲取服務器,
否則要自己提供一個文件,
這里需要注意一下。
4- 參考的鏈接
- paramiko的ssh和scp
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。
舉報投訴
-
模塊
+關注
關注
7文章
2769瀏覽量
48825 -
命令
+關注
關注
5文章
716瀏覽量
22615 -
執行
+關注
關注
0文章
16瀏覽量
12689
發布評論請先 登錄
相關推薦
手機也能玩Linux服務器——NOKIA手機高端應用
no” 輸入用戶名和密碼后,我們看到已經成功登陸到服務器上,這時光標停在命令提示符上,如圖: 我們輸入幾個簡單基本的Linux命令: ls命
發表于 11-28 14:05
遠程登陸linux
(man-in-the-middle)攻擊方式的攻擊。就是存在另一個人或者一臺機器冒充真正的服務器接收用戶傳給服務器的數據,然后再冒充用戶把數據傳給真正的服務器。而 SSH 是目前較可靠,專為遠程登錄會話和其他網絡
發表于 12-04 16:29
【Banana Pi M1+試用體驗】BananaPi-M1+之串口登陸、vnc遠程登陸
的串口。(打開設備管理器就可以看到,我這里是COM3)速度那里填115200,然后點打開要是開機過后進去是什么都不顯示的,在這里只要按回車鍵就可以看見命令行了。然后輸入用戶名跟密碼(我這里已經登陸過了
發表于 06-17 19:20
【Banana Pi M1+試用體驗】BananaPi-M1之搭建FTP服務器
命令行窗口,輸入ftp +你的ip地址。默認賬號是pi密碼bananapi(根據你實際登陸PI用的賬號密碼) 如果顯示這樣,說明你的ftp服務器已經成功啟動了。6.電腦登陸ftp服
發表于 06-26 12:53
【NanoPi NEO Plus2開發板試用體驗】tomcat+mysql+natapp搭建服務器(域名登陸)---續
前言:前面寫到安裝好tomcat、mysql之后,在電腦端用瀏覽器登陸服務器,接下來配置虛擬目錄,創建數據庫和表,插入數據。之前部分的鏈接是:https://bbs.elecfans.com
發表于 08-25 17:59
遠端機器的臨時執行命令
例行化的工作,像復雜的配置管理、機械化的環境部署,可以用Ansible的playbook(劇本)功能。臨時需要在遠端機器執行命令時,可以使用Ansible的ad-hoc command(臨時執行命令
發表于 07-19 06:42
賬號登陸問題
我使用學生郵箱申請的學生許可證,然后用我自己的常用郵箱申請了得極的賬號,請問我該如何在使用學生許可證的同時使用得極。學生許可證登陸服務器是portal365.altium.com,得極服務器是portal365.altium.c
發表于 04-20 11:51
求一份基于RK3399的Samba共享服務器設計方案
1、搭建Samba共享服務器安裝Samba首先遠程登陸 RK3399執行以下命令安裝 Samba安裝結束階段有錯誤提示,但提示說可以忽略這個錯誤配置Samba新建 smaba 共享目錄
發表于 04-15 16:10
CAD中如何快速重復執行命令?
快速重復執行命令主要是靠鼠標右鍵或者是鍵盤上的空格以及上下方向鍵。 輸入OP命令打開選項對話框,點用戶系統配置選項卡自定義右鍵單擊按鈕,默認模式下無論是否選定對象,單
發表于 10-23 17:04
?1679次閱讀
介紹redis服務器運行過程
Redis服務器負責與多個客戶端建立網絡連接,處理客戶端發送三個的命令請求,在數據庫中爆粗你客戶單執行命令所產生的數據,并通過資源管理來維持服務器
發表于 03-07 10:15
?594次閱讀
1433端口的SQL TOOL執行命令錯誤應該如何修復詳細說明
然后用SQL TOOLS連接主機,進行SQL或者CMD命令執行,從而 得主機的控制權,但是服務器的管理人員通常會把一些不安全的漏洞補上,所以用sql tools直接執行命令成功的幾率不
發表于 11-22 16:20
?2次下載
評論