欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python使用paramiko連接遠程服務器執(zhí)行Shell命令的實現(xiàn)

 更新時間:2021年03月04日 11:25:58   作者:木法星人  
這篇文章主要介紹了Python使用paramiko連接遠程服務器執(zhí)行Shell命令的實現(xiàn),本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

需求

自動化測試場景里, 有時需要在代碼里獲取遠程服務器的某些數(shù)據(jù), 或執(zhí)行一些查詢命令,如獲取Linux系統(tǒng)版本號 \ 獲取CPU及內存的占用等, 本章記錄一下使用paramiko模塊SSH連接服務器的方法

1. 先安裝paramiko庫

pip3 install paramiko

2. 代碼

#!/usr/bin/env python
# coding=utf-8

"""
# :author: Terry Li
# :url: https://blog.csdn.net/qq_42183962
# :copyright: © 2020-present Terry Li
# :motto: I believe that the God rewards the diligent.
"""
import paramiko

class cfg:
	host = "192.168.2.2"
	user = "root"
	password = "123456"


class sshChannel:
	def __init__(self, cfg_obj, timeout_s=5, port=22):
		self._cfg = cfg_obj
		self.ssh_connect_timeout = timeout_s
		self.port = port
		self.ssh = self.connect_server()

	def connect_server(self):
		ssh_cli = paramiko.SSHClient()
		key = paramiko.AutoAddPolicy()
		ssh_cli.set_missing_host_key_policy(key)
		try:
			ssh_cli.connect(self._cfg.host, port=self.port, username=self._cfg.user, password=self._cfg.password,
							timeout=self.ssh_connect_timeout)
		except paramiko.ssh_exception.SSHException:
			print("連接{}失敗, 請檢查配置或重試".format(self._cfg.host))
			ssh_cli.close()
		return ssh_cli

	def execute_cmd(self, cmd):
		"""
		:param cmd: 單個命令
		:return: 服務器的輸出信息
		"""
		stdin, stdout, stderr = self.ssh.exec_command(cmd)
		self.ssh.close()
		return stdout.read().decode('utf-8')

	def execute_cmd_list(self, cmd_list):
		"""
		:param cmd: 命令列表
		:return: 服務器的輸出信息的列表
		"""
		out_list = list(map(self.execute_cmd, cmd_list))
		return out_list

	def test_get_sys_version(self):
		sys_version = self.execute_cmd("lsb_release -rd")
		print(sys_version)

	def test_get_sys_disk_free_and_memory_free(self):
		sys_info = self.execute_cmd_list(["df -h -BG /", "free -m"])
		print(sys_info)
		
if __name__ == '__main__':
	server = sshChannel(cfg)
	server.test_get_sys_version()
	server.test_get_sys_disk_free_and_memory_free()

到此這篇關于Python使用paramiko連接遠程服務器執(zhí)行Shell命令的實現(xiàn)的文章就介紹到這了,更多相關Python使用paramiko連接遠程服務器執(zhí)行Shell命令內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • Python入門教程(十六)Python的if邏輯判斷分支

    Python入門教程(十六)Python的if邏輯判斷分支

    這篇文章主要介紹了Python入門教程(十六)Python的if邏輯判斷分支,Python是一門非常強大好用的語言,也有著易上手的特性,本文為入門教程,需要的朋友可以參考下
    2023-04-04
  • python中怎么表示空值

    python中怎么表示空值

    在本篇內容里小編給大家整理了關于python如何表示空值的知識點內容,有興趣的朋友們可以跟著學習參考下。
    2020-06-06
  • Python web框架fastapi中間件的使用及CORS跨域問題

    Python web框架fastapi中間件的使用及CORS跨域問題

    fastapi "中間件"是一個函數(shù),它在每個請求被特定的路徑操作處理之前,以及在每個響應之后工作,它接收你的應用程序的每一個請求,下面通過本文給大家介紹Python web框架fastapi中間件的使用及CORS跨域問題,感興趣的朋友一起看看吧
    2024-03-03
  • 全網(wǎng)最細 Python 格式化輸出用法講解(推薦)

    全網(wǎng)最細 Python 格式化輸出用法講解(推薦)

    這篇文章主要介紹了全網(wǎng)最細 Python 格式化輸出用法講解,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-01-01
  • 利用插件和python實現(xiàn)Excel轉json的兩種辦法

    利用插件和python實現(xiàn)Excel轉json的兩種辦法

    轉換Excel表格到JSON格式有很多方法,下面這篇文章主要給大家介紹了關于利用插件和python實現(xiàn)Excel轉json的兩種辦法,文中通過代碼介紹的非常詳細,需要的朋友可以參考下
    2023-11-11
  • 解決Numpy中sum函數(shù)求和結果維度的問題

    解決Numpy中sum函數(shù)求和結果維度的問題

    今天小編大家分享一篇解決Numpy中sum函數(shù)求和結果維度的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • python?pyaudio音頻錄制的實現(xiàn)

    python?pyaudio音頻錄制的實現(xiàn)

    這篇文章主要介紹了python?pyaudio音頻錄制的實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • OpenCV圖像縮放之cv.resize()函數(shù)詳解

    OpenCV圖像縮放之cv.resize()函數(shù)詳解

    resize函數(shù)opencv中專門用來調整圖像大小的函數(shù),下面這篇文章主要給大家介紹了關于OpenCV圖像縮放之cv.resize()函數(shù)的相關資料,文中通過實例代碼介紹的非常詳細,需要的朋友可以參考下
    2022-09-09
  • Python使用python-docx庫復制Word文檔樣式的實現(xiàn)方法

    Python使用python-docx庫復制Word文檔樣式的實現(xiàn)方法

    在日常辦公中,我們經常需要處理Word文檔的格式調整、內容更新等任務,本文將介紹如何使用python-docx庫來復制一個Word文檔的內容及樣式,并展示如何利用此方法進行文檔內容的自動化處理,需要的朋友可以參考下
    2025-05-05
  • python遞歸算法(無限遞歸,正常遞歸,階乘)

    python遞歸算法(無限遞歸,正常遞歸,階乘)

    本文主要介紹了python遞歸算法,包含無限遞歸,正常遞歸,階乘等,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2024-02-02

最新評論