亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

pyqt遠程批量執(zhí)行Linux命令程序的方法

 更新時間:2019年02月14日 13:01:55   作者:黑面狐  
今天小編就為大家分享一篇pyqt遠程批量執(zhí)行Linux命令程序的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

寫了個小程序:

功能

1.測試遠程ssh連接是否成功,

2.批量執(zhí)行遠程ssh命令

效果如下:

pyqt遠程批量執(zhí)行Linux命令程序

代碼如下:

#-*- coding:utf-8 -*-
import sys
from PyQt4 import QtCore, QtGui, uic
import locale
import re
import os
from PyQt4.QtCore import *
from PyQt4.QtGui import *
import paramiko
qtCreatorFile = "test.ui" # Enter file here.
 
Ui_MainWindow, QtBaseClass = uic.loadUiType(qtCreatorFile)
a = 0
username_list = []
ip_list = []
password_list = []
class MyApp(QtGui.QMainWindow, Ui_MainWindow):
  def __init__(self):
    QtGui.QMainWindow.__init__(self)
    Ui_MainWindow.__init__(self)
    self.setupUi(self)
    self.add.clicked.connect(self.add_info)
    self.test.clicked.connect(self.test_link)
    self.do_2.clicked.connect(self.do_command)
  def add_info(self):
    global a
    ip = self.ip.text()
    ip_list.append(ip)
    username = self.username.text()
    username_list.append(username)
    password = self.password.text()
    password_list.append(password)
    self.table.setHorizontalHeaderLabels(['ip','username','password'])
    newItem = QTableWidgetItem(ip) 
    self.table.setItem(a, 0, newItem)
     
    newItem = QTableWidgetItem(username) 
    self.table.setItem(a, 1, newItem) 
     
    newItem = QTableWidgetItem(password) 
    self.table.setItem(a, 2, newItem)
    a += 1
  def test_link(self):
    ip = str(self.ip.text())
    username = str(self.username.text())
    password = str(self.password.text())
    try:
      ssh = paramiko.SSHClient()
      ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
      ssh.connect(ip, 22, username, password)
      stdin, stdout, stderr = ssh.exec_command("who")
      print stdout.read()
      search = re.search(stdout.read(), username)
      if search:
        info = u"連接成功"
      else:
        info = u"連接失敗"
    except:
      info = u"連接失敗"
    print info
    self.state.setText(info)
    ssh.close()
 
  def do_command(self):
    command = str(self.command.text())
    ssh = paramiko.SSHClient()
    ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    for i in range(len(ip_list)):
      ip = str(ip_list[i])
      username = str(username_list[i])
      password = str(password_list[i])
      ssh.connect(ip, 22, username, password)
      stdin, stdout, stderr = ssh.exec_command(command)
      info = stdout.read()
      self.result.append(info)
 
    ssh.close()
 
 
 
 
if __name__ == "__main__":
  app = QtGui.QApplication(sys.argv)
  mycode = locale.getpreferredencoding()
  code = QTextCodec.codecForName(mycode)
  QTextCodec.setCodecForLocale(code)
  QTextCodec.setCodecForTr(code)
  QTextCodec.setCodecForCStrings(code)
  window = MyApp()
  window.show()
  sys.exit(app.exec_())

以上這篇pyqt遠程批量執(zhí)行Linux命令程序的方法就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python對excel的基本操作方法

    Python對excel的基本操作方法

    這篇文章主要介紹了Python對excel的基本操作,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-02-02
  • django xadmin action兼容自定義model權(quán)限教程

    django xadmin action兼容自定義model權(quán)限教程

    這篇文章主要介紹了django xadmin action兼容自定義model權(quán)限教程,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • 基于Python實現(xiàn)配置熱加載的方法詳解

    基于Python實現(xiàn)配置熱加載的方法詳解

    所謂的配置熱加載,也就是說當服務(wù)收到配置更新消息之后,我們不用重啟服務(wù)就可以使用最新的配置去執(zhí)行任務(wù)。本文將介紹如何用Python實現(xiàn)配置熱加載,需要的可以參考一下
    2022-07-07
  • python 實現(xiàn)矩陣上下/左右翻轉(zhuǎn),轉(zhuǎn)置的示例

    python 實現(xiàn)矩陣上下/左右翻轉(zhuǎn),轉(zhuǎn)置的示例

    今天小編就為大家分享一篇python 實現(xiàn)矩陣上下/左右翻轉(zhuǎn),轉(zhuǎn)置的示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-01-01
  • Python plt.boxplot函數(shù)及其參數(shù)使用小結(jié)

    Python plt.boxplot函數(shù)及其參數(shù)使用小結(jié)

    plt.boxplot函數(shù)用于繪制箱線圖,本文介紹了Python plt.boxplot函數(shù)及其參數(shù)使用小結(jié),文中通過示例代碼介紹的非常詳細,需要的朋友們下面隨著小編來一起學習學習吧
    2024-02-02
  • python中strip(),lstrip(),rstrip()函數(shù)的使用講解

    python中strip(),lstrip(),rstrip()函數(shù)的使用講解

    這篇文章主要介紹了python中strip(),lstrip(),rstrip()函數(shù)的使用講解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-11-11
  • 150行Python代碼實現(xiàn)帶界面的數(shù)獨游戲

    150行Python代碼實現(xiàn)帶界面的數(shù)獨游戲

    這篇文章主要介紹了150行Python代碼實現(xiàn)帶界面的數(shù)獨游戲,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-04-04
  • 淺談Python 遞歸算法指歸

    淺談Python 遞歸算法指歸

    這篇文章主要介紹了淺談Python 遞歸算法指歸,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-08-08
  • Python 字符串池化的前提

    Python 字符串池化的前提

    這篇文章主要介紹了Python 字符串池化的前提,文中示例代碼非常詳細,幫助大家更好的理解和學習,感興趣的朋友可以了解下
    2020-07-07
  • Python實現(xiàn)把utf-8格式的文件轉(zhuǎn)換成gbk格式的文件

    Python實現(xiàn)把utf-8格式的文件轉(zhuǎn)換成gbk格式的文件

    這篇文章主要介紹了Python實現(xiàn)把utf-8格式的文件轉(zhuǎn)換成gbk格式的文件,本文給出了實現(xiàn)代碼并同時剖析了代碼的作用,需要的朋友可以參考下
    2015-01-01

最新評論