Heim > Betrieb und Instandhaltung > Betrieb und Wartung von Linux > Wie implementiert Python die Remoteausführung von Linux-Befehlen über die Paramiko-Bibliothek?

Wie implementiert Python die Remoteausführung von Linux-Befehlen über die Paramiko-Bibliothek?

WBOY
Freigeben: 2023-05-17 10:55:50
nach vorne
1604 Leute haben es durchsucht

(1) Installieren Sie zuerst die Paramiko-Bibliothek

pip install paramiko
Nach dem Login kopieren

(2) Die folgenden Klassen sind gekapselt und können direkt verwendet werden

import paramiko

class SSHClient(object):
    def __init__(self,host,username,password,port=22):
        self.__host=host
        self.__username=username
        self.__password=password
        self.__port=port
        self.__ssh=None
        self.connect()

    def __del__(self):
        self.close()

    def connect(self):
        self.__ssh = paramiko.SSHClient()
        self.__ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
        self.__ssh.connect(hostname=self.__host,port=self.__port,username=self.__username,password=self.__password)

    def exec(self,cmd):
        print(f"begin to run remote cmd: {cmd}")
        stdin, stdout, stderr = self.__ssh.exec_command(cmd,timeout=1800)
        returncode = stdout.channel.recv_exit_status()
        output=stdout.read().decode('utf-8')
        return output

    def close(self):
        self.__ssh.close()
Nach dem Login kopieren

(3) Bereiten Sie beispielsweise eine virtuelle Linux-Maschine mit der IP-Adresse 192.168.1.12 vor und dann Verwenden Sie es direkt wie folgt: Die oben gekapselte Klasse kann die Remote-Ausführung von Linux-Befehlen realisieren ,MULTICAST>

inet6 fe80::4a67:131d :9133:acdf prefixlen 64 Scopeid 0x20< ;link>

Ether 00:0c:29:58:d8:4c txqueuelen 1000 (Ethernet)

RX-Pakete 195340 Bytes 148862388 (141,9 MiB)
RX-Fehler 0 verworfen 0 Überläufe 0 Rahmen 0

TX-Pakete 163425 Bytes 20837281 (19,8 MiB)
TX-Fehler 0 verworfen 0 Überläufe 0 Träger 0 Kollisionen 0

lo: flags=73
inet6 :: 1 Präfixlen 128 ScopeId 0x10 & lt; Host & GT; 0 fallen gelassen 0 Überläufe 0 Träger 0 Kollisionen 0

virbr0: flags=4099 :54:00:e8:3f: 5c txqueuelen 1000 (Ethernet)
RX-Pakete 0 Bytes 0 (0,0 B)
RX-Fehler 0 verworfen 0 Überläufe 0 Frame 0
TX-Pakete 0 Bytes 0 (0,0 B)

TX-Fehler 0 verworfen 0 Überläufe 0 Träger 0 Kollisionen 0


Das obige ist der detaillierte Inhalt vonWie implementiert Python die Remoteausführung von Linux-Befehlen über die Paramiko-Bibliothek?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:yisu.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage