話不多說直接上**
封裝連線
@staticmethod
def connect(ip, server_user, server_port, server_path):
"""連線伺服器
:param :
:return:
"""ssh = paramiko.sshclient()
private_key = paramiko.rsakey.from_private_key_file('{}.ssh/id_rsa'.format(server_path))
ssh.set_missing_host_key_policy(paramiko.autoaddpolicy())
try:
ssh.connect(ip, port=server_port, username=server_user, pkey=private_key, timeowspgxypkxfut=5, allow_agent=true)
return ssh
except exception as e:
app.logger.info('connect_error info is {}'.for
return
在伺服器執行命令
def fabric_run_cmd(self, ip, server_user, server_port, server_path, cmd):
"""批量在伺服器執行命令
:return:
"""conn = self.connect(ip, server_user, server_port, server_path)
try:
if type(conn) == dict:
程式設計客棧 return conn
else:
stdin, stdout, stderr = conn.exec_command(cmd)
app.logger.info('fabric_run_cmd_stdout info is {}'.format(stdout.readlines()))
app.logger.info('fabric_run_cmd_stderr info is {}'.format(stderr.readlines()))
channel = stdout.channel
status = channel.recv_exit_status()
conn.close()
app.logger.info('fabric_run_cmd_status info is {}'.format(status))
if status == 0:
return
else:
return
except exception as e:
app.logger.info('fabric_run_cmd_error info is {}'.format(e.__repr__()))
return
將檔案傳送到伺服器
def fabric_put_file(self, ip, src_file, dst_file, server_user, server_port, server_path):
"""傳送檔案到伺服器
:return:
"""conn = self.connect(ip, server_user, server_port, server_path)
if type(conn) == dict:
return conn
else:
try:
ftp = conn.open_sftp()
ftp.put(dst_file, src_file) # 傳送檔案之前先判斷有沒有目標資料夾 如果沒有現在伺服器上建立資料夾
ftp.close() # 在此判斷檔案是否傳送成功
return
except exception as e:
app.logger.info('fabric_put_file_error info is {}'.format(e.__repr__()))
return
能力有限,如有不妥請留言指正
小楊學python(十) paramiko模組
1.paramiko 通過python實現模擬ssh批量登入 在linux系統上 ssh本身也可以用來傳檔案,例如 使用 scp r opt test root remote host opt 命令也可以執行傳輸檔案到遠端主機。小知識點 linux中 l.可以檢視隱藏檔案,ls a 檢視所有檔案 包...
python簡單封裝paramiko模組
基於 paramiko 的使用,將其做簡單封裝,便於使用 coding utf 8 import paramiko class sshclient object def init self,hostname,username,port,private key 我這是私鑰登入,密碼的話就寫passwo...
python第五十天 paramiko
python通過paramiko實現,ssh功能 1 import paramiko 23 ssh paramiko.sshclient 建立一個ssh連線物件 4 ssh.set missing host key policy paramiko.autoaddpolicy 允許連線不在knov h...
param與requestScope的區別
之前並沒有仔細學過el表示式,只知道用 去直接獲取值。最近看教程的時候發現使用的是param,然後我就不太明白requestscope與param的區別。所以這裡做一個比較 首先確定兩個值 name admin psw 123 對name設定值,對psw不進行操作 servlet中 protecte...
教你如何利用python呼叫攝像頭
這篇文章主要介紹了python呼叫攝像頭的示例 幫助大家更好的理解和使用python,感興趣的朋友可以瞭解下 一 開啟攝像頭 import cv2 import numpy as np def video demo capture cv2.videocapture 0 0為電腦內建攝像頭 while...
利用python如何刷訪問量
剛剛閒著無聊,看著自己寫的部落格的訪問量低的可憐,竟有一種想要刷的感覺。人就應該這樣敢想敢做!下面是我的python 寫的比較粗糙,各位看官看看就好。不過話說回來,刷完我就有深深的愧疚感,我們不應該通過旁門歪道來獲得成功,訪問量代表的是人們對你的認可,提升自己的能力才是提高訪問量的不二法門。經過左腦...
如何利用Python對中文進行分詞處理
python做中文分詞處理主要有以下幾種 結巴分詞 nltk thulac 1 fxsjy jieba 結巴的標語是 做最好的 python 中文分片語件,或許從現在來看它沒做到最好,但是已經做到了使用的人最多。結巴分詞網上的學習資料和使用案例比較多,上手相對比較輕鬆,速度也比較快。結巴的優點 2 ...
如何利用Python對遙感影像進行顯示
遙感影像一般具有多個波段,比較常見的影像一般是4波段多光譜影像,比如高分一號 高分二號 資源三號等。這些影像資料一般體量較大,有的幾百兆,有的多達幾十g,格式一般是16位無符號整型,一般看圖軟體無法開啟顯示,需要arcgis envi等專業的軟體進行檢視,有時候很不方便。這篇部落格就簡單的介紹一下,...
Python如何利用多核處理器
python中,如果想使程式充分利用多核處理器,有以下幾個方案 l 使用threading 模組,然後將程式執行在 ironpython 或jython 之上。l 使用python 自帶的multiprocessing 模組,這個是用來建立多程序的。l 使用subprocess 模組建立子程序,並控...