Python-paramiko模塊簡單應用(給服務器上傳文件或下載文件)


 應用一:連接遠程機執行bash命令

import paramiko#此模塊用於連接虛擬機,ansible底層用此模塊
hostname = '192.168.254.24'
port = 22
username = 'root'
password = 'root'
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())#忽略know_hosts文件
ssh.connect(hostname=hostname,port=port,username=username,password=password)
while True:
    cmd = input('====>:')
    stdin, stdout, stderr = ssh.exec_command(cmd)
    print(stdout.read().decode('utf-8'))
或
import paramiko
gannimeide = paramiko.SSHClient()
gannimeide.set_missing_host_key_policy(paramiko.AutoAddPolicy())
gannimeide.connect('192.168.206.140',22,'root','123456')
# stdin, stdout, stderr = gannimeide.exec_command('ls')#執行單個bash命令
# print(stdout.read().decode('utf-8'))
while True:
    cmd = input('===>:')
    stdin, stdout, stderr = gannimeide.exec_command(cmd)
    print(stdout.read().decode('utf-8'))

應用二:連接遠程機上傳下載文件

import paramiko
hostname = '192.168.206.140'
port = 22
username = 'root'
password = '123456'
t=paramiko.Transport((hostname,port))#ftp
t.connect(username=username,password=password)
sftp = paramiko.SFTPClient.from_transport(t)
sftp.put(r'C:\Users\yhy\Desktop\1.txt', '/root/chedan')
sftp.get('/root/chedan',r'C:\Users\yhy\Desktop\made.txt' )
sftp.close()
或
import paramiko
nimei = paramiko.Transport(('192.168.206.140',22))
nimei.connect(username='root',password='123456')
p = paramiko.SFTPClient.from_transport(nimei)
p.put(r'C:\Users\yhy\Desktop\1.txt', '/root/chedan2')#上傳文件到遠程機
p.get('/root/chedan2', r'C:\Users\yhy\Desktopmade.txt')#從遠程機上下載
p.close()

 

import paramiko
hostname = '172.16.0.136'  #服務器ip
port = 22
username = 'root'    #服務器用戶名
password = '123456'   #服務器用戶登錄密碼
t = paramiko.Transport((hostname,port))
t.connect(username=username,password=password)
sftp = paramiko.SFTPClient.from_transport(t)
sftp.put(r'G:\宏福課件\lnmp1.5-full.tar.gz', '/root/lnmp1.5-full.tar.gz')
sftp.close()

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM