# -*- coding: UTF-8 -*- import paramiko import re from time import sleep key_file = paramiko.RSAKey.from_private_key_file("/root/.ssh/id_rsa") def ssh(): ssh = paramiko.SSHClient() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) #指定当对方主机没有本机公钥的情况时应该怎么办,AutoAddPolicy表示自动在对方主机保存下本机的秘钥 ssh.connect(hostname='a.xdc.ink', port=22, username='root', # pkey=key_file, # 使用密钥方式登陆 password='cstorfs') #SSH端口默认22,可改 stdin,stdout,stderr = ssh.exec_command("df -P") #这三个得到的都是类文件对象 outmsg,errmsg = stdout.read(),stderr.read() #读一次之后,stdout和stderr里就没有内容了,所以一定要用变量把它们带的信息给保存下来,否则read一次之后就没有了 #outmsg = str(outmsg) #print(outmsg.replace("\\n","\\r\\n")) print(outmsg.decode()) print(errmsg) if errmsg == "": print(outmsg) ssh.close() if __name__ == '__main__': ssh()