国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > Python > 正文

python paramiko遠程服務器終端操作過程解析

2024-09-09 19:03:17
字體:
來源:轉載
供稿:網友

這篇文章主要介紹了python paramiko遠程服務器終端操作過程解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

1.with open寫文件到本地

2.paramiko SFTPClient將文件推到salt服務端

3.paramiko SSHClient通過salt-cp將文件分發給目標服務器

1.

with open(filePath, ‘w‘) as f:   # filePath文件本地路徑,w write模式  f.write(content)  return filePath  

2.

import paramiko# 1 連接客戶端transport = paramiko.Transport((ssh_url, ssh_port))transport.connect(username=ssh_user, password=ssh_pwd)# 2 定義與客戶端交互  將剛剛定義的transport當參數傳遞給他sftp = paramiko.SFTPClient.from_transport(transport)# sftp.put(r‘/Users/mnt/{}‘.format(script_name), ‘/mnt/{}‘.format(script_name))sftp.put(本地路徑+ ‘{}‘.format(文件名), 目標路徑+‘{}‘.format(文件名))# 5 關閉連接transport.close()

3.

# 實例化一個sshssh = paramiko.SSHClient()# 設置主機不在khost_key中也能連接ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())# 創建連接ssh.connect(hostname=ssh_url, port=ssh_port, username=ssh_user, password=ssh_pwd)# 執行命令,     salt-cp -L salt_minion_hostname local_url/filename target_urlstdin, stdout, stderror = ssh.exec_command(‘salt-cp -L localhost.localdomain /mnt/‘ + script_name + ‘ /mnt‘)# 打印輸出print(stdout.read())# 關閉連接ssh.close()

4.通過paramiko模塊控制遠程服務器cmd終端,執行git命令

import paramiko#def parmiko_con():  # 實例化一個ssh  ssh = paramiko.SSHClient()  # 設置主機不在khost_key中也能連接  ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())  # 創建連接  ssh.connect(hostname=ssh_url, port=ssh_port, username=ssh_user, password=ssh_pwd)  # 執行命令  # cmd = ‘cd /mnt/test_pro/opsmanage/ && git shortlog -2‘    # 查看最近兩次的提交版本,在cmd里執行沒有問題,但在函數里運行響應不出來,git log命令需要按q退出  # cmd = ‘cd /mnt/test_pro/opsmanage/ && git rev-list master‘   # master分支提交記錄倒敘排列  cmd = ‘cd /mnt/test_pro/opsmanage/ && git log --since=1.weeks‘  # 查看近一周的提交,多條數據只有一個列表,需要進行處理,需要請移步:https://www.cnblogs.com/lutt/p/12037454.html  # cmd = ‘cd /mnt/test_pro/opsmanage/ && git rev-list --all -n 2‘  # 歷史版本reverse只去兩條記錄(只顯示commit id)  # cmd = ‘cd /mnt/OpsManage/ && git branch -a‘    # 查看當前所有分支, git branch 查看當前分支  # cmd = ‘cd /mnt/test_pro/opsmanage/ && git tag -l‘ # 查看當前所有tag  stdin, stdout, stderror = ssh.exec_command(cmd)  # 打印輸出  list2 = []  ret = stdout.read().decode(‘utf-8‘)  list2 = ret.split(‘/n‘)  print(list2)  # 關閉連接  ssh.close()if __name__ == ‘__main__‘:  parmiko_con()  print(‘ok‘)

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網之家。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 蓬莱市| 集安市| 伊金霍洛旗| 鹰潭市| 宜宾市| 临湘市| 象山县| 两当县| 大余县| 鹿泉市| 七台河市| 会泽县| 庆安县| 泽库县| 张家港市| 黎川县| 锡林郭勒盟| 安庆市| 鞍山市| 泽州县| 克山县| 历史| 汉川市| 赞皇县| 江都市| 永昌县| 南城县| 南昌市| 思茅市| 麻栗坡县| 贵溪市| 腾冲县| 吴忠市| 罗甸县| 扶风县| 綦江县| 启东市| 英山县| 商洛市| 抚顺市| 长春市|