Python实现SSH远程登陆,并执行命令的方法(分享)

在自动化测试过程中,比较常用的操作就是对远程主机进行操作,如何操作呢?使用SSH远程登陆到主机,然后执行相应的command即可。

使用Python来实现这些操作就相当简单了。下面是测试code。

代码如下:(code运行环境:python27+eclipse+pydev)

import paramiko 
 
def sshclient_execmd(hostname, port, username, password, execmd): 
  paramiko.util.log_to_file("paramiko.log") 
   
  s = paramiko.SSHClient() 
  s.set_missing_host_key_policy(paramiko.AutoAddPolicy()) 
   
  s.connect(hostname=hostname, port=port, username=username, password=password) 
  stdin, stdout, stderr = s.exec_command (execmd) 
  stdin.write("Y") # Generally speaking, the first connection, need a simple interaction. 
   
  print stdout.read() 
   
  s.close() 
   
   
   
def main(): 
   
  hostname = '10.***.***.**' 
  port = 22 
  username = 'root' 
  password = '******' 
  execmd = "free" 
   
  sshclient_execmd(hostname, port, username, password, execmd) 
   
   
if __name__ == "__main__": 
  main()

相关推荐