sftp的上传下载是最为常见的功能之一,实现也很简单,网上资料很多,但为了Python知识点的完整性,还是再描述了一遍。
通常我们使用paramiko库实现sftp的操作,paramiko的安装可以使用“pip install paramiko”直接实现安装。
实现sftp上传下载的示例代码如下:
import paramiko
def upload_action(IP, User, Password, local_file, server_file):
try:
terminal = paramiko.Transport(IP, 22)
terminal.connect(username=User, password=Password)
sftp = paramiko.SFTPClient.from_transport(terminal)
sftp.put(local_file, server_file)
terminal.close()
except Exception as e:
print (e)
raise
return
def download_action(IP, User, Password, local_file, server_file):
try:
terminal = paramiko.Transport(IP, 22)
terminal.connect(username=User, password=Password)
sftp = paramiko.SFTPClient.from_transport(terminal)
sftp.get(server_file, local_file)
terminal.close()
except Exception as e:
print (e)
raise
return
调用方法示例:
download_action("10.250.1.39", "root", "root123456", "abc.txt", "/home/abc.txt")
upload_action("10.250.1.39", "root", "root123456", "abc.txt", "/home/abc_2.txt")
执行完毕后,我们可以看到远程/home目录下由一个“abc.txt”文件增加为“abc.txt”和“abc_2.txt”共两个文件。
如果您喜欢这篇文章,别忘了点赞和评论哦!