作者:蹼蹼蹡蹡Joseph | 来源:互联网 | 2023-09-18 11:03
简介:paramiko是一个基于SSH用于连接远程服务器并执行相关操作(SSHClient和SFTPClinet,即一个是远程连接,一个是上传下载服务),使用该模块可以对远程服务器
简介:paramiko是一个基于SSH用于连接远程服务器并执行相关操作(SSHClient和SFTPClinet,即一个是远程连接,一个是上传下载服务),使用该模块可以对远程服务器进行命令或文件操作。
下载安装:pycrypto,由于 paramiko 模块内部依赖pycrypto,所以先下载安装pycrypto
pip3 install pycrypto
pip3 install paramiko
使用:
1.使用账号密码上传下载文件
import paramiko
# 获取Transport实例
tran = paramiko.Transport(("192.168.37.128", 22))
# 连接SSH服务端
tran.connect(username="root", password="admin123")
# 获取SFTP实例
sftp = paramiko.SFTPClient.from_transport(tran)
# 设置上传的本地/远程文件路径
localpath = "./sky_data.py"
remotepath = "/bin/sky_data1111.py"
# 执行上传动作
sftp.put(localpath, remotepath)
# 执行下载动作
sftp.put(remotepath, localpath)
# 关闭链接
tran.close()
问题:问题1:"IOError: Failure"
注意:这里的remotepath和localpath为:“文件所在目录 + ‘/‘ + 文件名” 完整的文件路径,不是只有文件的目录,要不然会出各种错误。
paramiko模块中的put还是get方法,将上面的目录改成所要上传下载文件的完整路径(注意:这里的路径包括文件名,要不然程序不知道要将文件存储在哪里,所以会出现各种错误),上面出现的各种问题就不见了