zoukankan      html  css  js  c++  java
  • Pysftp

     作为一个轻量级的直接远程操作目标机器的模块,直接上代码, 具体用法请参考相关文档(自己上网查 =。=)。


    class SFTP(object):
    def __init__(self):
    self.port = 22
    self.hostname = ''
    self.user_name = ''
    self.pwd = ''
    self.file_path = ''

    def parse_params(self, dic): self.hostname = dic.get('hostname') or '' assert self.hostname, "require set ssh hostname." self.user_name, self.new_hostname = self.hostname.split('@') # print(self.user, '@', self.hostname) # self.user_name = dic.get('user_name') or '' self.pwd = dic.get('password') or '' self.port = dic.get('port') or 22 self.file_path = dic.get('file_path') or '' assert self.file_path, "require set file_path." # assert self.user_name, "require set ssh user name." assert self.pwd, "require set ssh password." # self.new_storage_path = os.path.join(self.storage_path, gen_md5(self.hostname + '|' + self.pwd)) self.new_storage_path = os.path.join(self.storage_path, gen_md5(self.hostname + '|' + self.pwd + '|' + self.file_path + f"{str(time.time())}")) # set storage_path self.set_storage_path(self.new_storage_path) def connet(self): d_l = [] pool = Pool(5) task_lst = [] cnopts = pysftp.CnOpts(knownhosts=self.hostname) cnopts.hostkeys = None with pysftp.Connection(host=self.new_hostname, username=self.user_name, password=self.pwd, port=self.port, cnopts=cnopts) as sftp: print("Connection succesfully stablished ... ") # Switch to a remote directory # sftp.cwd('../') sftp.cwd(self.file_path) # Obtain structure of the remote directory '/' # directory_structure = sftp.listdir_attr() # print(directory_structure) # _dir = sftp.listdir('/renpeng') file_dir = sftp.listdir(self.file_path)
           # ---- do something you wanna to do -----
  • 相关阅读:
    史上最详细 Linux 用户与用户组知识
    MySQL -2- 体系结构--随笔小记
    MySQL -2- 体系结构
    MySQL -1- 简介及安装
    MySQL -0- 课程大纲及课程链接
    探索Windows命令行系列(4):通过命令操作文件和文件夹
    探索Windows命令行系列(3):命令行脚本基础
    探索Windows命令行系列(2):命令行工具入门
    探索Windows命令行系列(1):导航目录
    Oracle 分页方法研究
  • 原文地址:https://www.cnblogs.com/presleyren/p/14215662.html
Copyright © 2011-2022 走看看