近期一直在弄一个小程序就是利用paramiko库与远程的服务器建立SSH连接,之后下载指定目录下所有文件以及子目录中的所有文件存储到本地对应的目录下,各位有没有相应的代码发一下。
近期一直在弄一个小程序就是利用paramiko库与远程的服务器建立SSH连接,之后下载指定目录下所有文件以及子目录中的所有文件存储到本地对应的目录下,各位有没有相应的代码发一下。
都知道paramiko这个库了,google一下有很多实例的:
#-*- coding: utf-8 -*-
import paramiko
import datetime
import os
hostname = 'xxx.xxx.xxx.xxx'
username = 'xxx'
password = 'xxx'
port = 22
local_dir = '/tmp/local_dir'
remote_dir = '/tmp/remote_dir'
try:
t = paramiko.Transport((hostname,port))
t.connect(username=username,password=password)
sftp = paramiko.SFTPClient.from_transport(t)
files = sftp.listdir(remote_dir)
# 如果有多层嵌套的目录处理下即可
for f in files:
sftp.get(os.path.join(remote_dir, f), os.path.join(local_dir, f))
t.close()
except Exception as err:
print(err)
如果觉得很麻烦,直接subprocess库使用去执行系统命令sshpass scp xxx
即可
linux 可以用楼上的os实现,而windows的话,你需要装一下git bash软件,然后把bin目录添加到系统环境变量PATH中,你会发现很多linux命令都在windows上可用了。有用请给赞或者采纳。
2 回答5.2k 阅读✓ 已解决
2 回答1.1k 阅读✓ 已解决
4 回答1.4k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
3 回答1.3k 阅读✓ 已解决
2 回答873 阅读✓ 已解决
1 回答1.8k 阅读✓ 已解决