In der Welt der Automatisierung kann das Ausführen von Befehlen aus der Ferne die Effizienz und Vielseitigkeit Ihrer Skripte verbessern. Python bietet mit dem Paramiko-Modul eine leistungsstarke Möglichkeit, dies zu erreichen.
Um seine Verwendung zu veranschaulichen, nehmen wir an, Sie möchten einen Befehl auf einem Remote-Server namens „remotehost“ ausführen, auf dem Sie ein bekanntes Passwort haben. Manuell kann dies erfolgen mit:
<code class="bash">ssh user@remotehost</code>
In Python können Sie mit paramiko diesen Prozess automatisieren:
<code class="python">import paramiko # Initialize SSH client ssh = paramiko.SSHClient() ssh.connect("remotehost", username="user", password="password") # Execute remote command ssh_stdin, ssh_stdout, ssh_stderr = ssh.exec_command("your_remote_command")</code>
Die Methode exec_command gibt drei dateiähnliche Objekte zurück: stdin for Senden von Daten an den Remote-Befehl, stdout zum Erfassen der Standardausgabe und stderr zum Erfassen von Standardfehlern.
Wenn Sie SSH-Schlüssel anstelle von Passwörtern verwenden, kann der Code wie folgt geändert werden:
<code class="python">import paramiko # Load private key k = paramiko.RSAKey.from_private_key_file("keyfilename.pem") # Set missing host key policy ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) # Connect using SSH key ssh.connect("remotehost", username="user", pkey=k) # Execute remote command ssh_stdin, ssh_stdout, ssh_stderr = ssh.exec_command("your_remote_command")</code>
Mit paramiko erhalten Sie die Flexibilität, Remote-Befehle in Python-Skripten auszuführen, sodass Sie eine Vielzahl von Aufgaben bequem von Ihrem lokalen Computer aus automatisieren können.
Das obige ist der detaillierte Inhalt vonWie automatisiere ich Remote-Befehle mit Python mithilfe von SSH?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!