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()