Python-paramiko远程传输使用
Posted 小小菜_v
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python-paramiko远程传输使用相关的知识,希望对你有一定的参考价值。
paramiko远程传输文件
class RemoteConnect(object):
"""
远程连接传输
"""
def __init__(self, host_ip, username, password):
"""
参数初始化
host_ip:服务器ip
username:用户名
password:密码
"""
self.host_ip = host_ip
self.port = 22 # 端口号
self.username = username
self.password = password
def connect(self, conn):
conn.connect(hostname=self.host_ip,
port=22,
username=self.username,
password=self.password,
allow_agent=False,
look_for_keys=False)
return conn
def connect_remote_machine(self, cmd):
"""
建立连接,并在远程服务器上运行命令
cmd:需要运行的commend
"""
try:
para = paramiko.SSHClient()
para.set_missing_host_key_policy(paramiko.AutoAddPolicy())
para_ = self.connect(para)
stdout = para_.exec_command(cmd)[1]
res = str(stdout.read())
except Exception as ex:
print(ex)
finally:
try:
para.close()
para_.close()
except Exception as ex:
print(ex)
return res
def sftp_file(self):
"""建立sftp连接"""
transport = paramiko.Transport(self.host_ip, self.port)
transport.connect(username=self.username,
password=self.password)
sftp = paramiko.SFTPClient.from_transport(transport)
return sftp
def sftp_put_file(self, local_path, remote_path):
"""
sftp推送文件到远程服务器
local_path:本地文件路径
remote_path:远程服务器路径
"""
try:
sftp = self.sftp_file()
sftp.put(local_path, remote_path)
except Exception as ex:
print(ex)
return False
finally:
try:
sftp.close()
except Exception as ex:
print(ex)
return True
def sftp_get_file(self, remote_path, local_path):
"""
sftp远程获取文件
local_path:本地文件路径
remote_path:远程服务器路径
"""
try:
sftp = self.sftp_file()
sftp.get(remote_path, local_path)
except Exception as ex:
print(ex)
return False
finally:
try:
sftp.close()
except Exception as ex:
print(ex)
return True
以上是关于Python-paramiko远程传输使用的主要内容,如果未能解决你的问题,请参考以下文章
Python-Paramiko 错误:'RSAKey' 对象不可迭代'
如何从我的 DatePicker 片段中传输格式化的日期字符串?
GitGit 分支管理 ( 克隆远程分支 | 克隆 master 分支 git clone | 查看远程分支 git branch -a | 克隆远程分支 git checkout -b )(代码片段
GitGit 分支管理 ( 克隆远程分支 | 克隆 master 分支 git clone | 查看远程分支 git branch -a | 克隆远程分支 git checkout -b )(代码片段