paramiko是模拟SSH的模块
SSH
#创建SSH对象
ssh = paramiko.SSHClient()
#允许链接不在know_hosts文件中的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
#链接服务器
ssh.connect(hostname='c1.salt.com',port=22,username='dralon',password='123456')
#执行命令
stdin,stdout,stderr = ssh.exec_command('df') #返回两个结果。stdin输入,stdout输出,stderr判断结果
#获取命令结果
result = filter(lambda x: x is not None,[stdout.read(),stderr.read()])[0]
#关闭链接
ssh.close()
SFTPClient
用于链接远程服务器并执行上传下载
import paramiko
transport = paramiko.Transport(('hostname',22))
transport.connect(username='dralon',password='123')
sftp = paramiko.SFTPClient.from_transport(transport)
#将location.py上传到服务器/tmp/test.py
sftp.put('/tmp/location,py','/tmp/test.py')
#将remove_path下载到本地local_path
sftp.get('remove_path','local_path')
transport.close()