====== Lanciare comandi via ssh con Paramiko ====== Autore: **//Fabio Di Matteo//** \\ Ultima revisione: **// 02/08/2019 - 13:34 //** // // Il seguente script lancia un comando su un server ssh remoto e ne stampa l'output. Se ci dovessero essere degli errori li stampa ed termina. #!/usr/bin/env python3 import paramiko #Se si vogliono ignorare i warning import warnings warnings.filterwarnings("ignore") #Canale per la connessione p = paramiko.SSHClient() p.set_missing_host_key_policy(paramiko.AutoAddPolicy()) #Provo a connettermi all'host try: p.connect("192.168.174.4", port=22, username="fabio", password="secret") except paramiko.ssh_exception.NoValidConnectionsError: print("Errore: Non posso connettermi all'host!") exit() #Lancio il comando e prelevo stdin, stdout, stderr stdin, stdout, stderr = p.exec_command("lsX /home/fabio/Desktop/") err=stderr.readlines() #Se non ci sono errori stampo lo stdout, altrimenti gli errori if not err: opt = stdout.readlines() for o in opt: print(o,end='') else: for e in err: print(e, end='')