作业需求:

1. 运行程序列出主机组或者主机列表

2. 选择指定主机或主机组

3. 选择让主机或者主机组执行命令或者向其传输文件(上传/下载)

4. 充分使用多线程或多进程

5. 不同主机的用户名密码、端口可以不同

 

思路解析:

1. 运用paramiko模块里的command和sftp方法执行命令传输文件

2. 指定主机和主机组,使用字典读取字典信息里的组和服务器信息,列出主机组和主机列表

3. 用threading模块控制paramiko模块里的command和sftp方法执行命令传输文件

4. 字典信息可以添加修改

 

程序核心代码

README

作者:yaobin
版本:简单Ftp示例版本 v0.1
开发环境: python3.6

程序介绍:
类 Fabric 主机管理程序开发:
1. 运行程序列出主机组或者主机列表
2. 选择指定主机或主机组
3. 选择让主机或者主机组执行命令或者向其传输文件(上传/下载)
4. 充分使用多线程或多进程
5. 不同主机的用户名密码、端口可以不同

使用说明:

/bin/fortress_machine

├─bin
│      fortress_machine.py #程序主目录__init__.py
│
├─conf
│  │  server_list
│  │  setting.py
│  │  __init__.py
│  │
│
├─core
│  │  add_machine.py   #添加server字典程序
│  │  basic_dict.py    #初始化字典程序
│  │  fortress_main.py  #交互程序
│  │  group_paramiko.py  #组管理交互程序
│  │  group_sftp.py      #组上传/下载交互程序
│  │  server_paramiko.py  #server管理交互程序
│  │  server_sftp.py    #server上传/下载交互程序
│  │  __init__.py
│  │
│  └─__pycache__
├─db
│  ├─download   #文件下载目录
│  └─upload     #文件上传目录
│          AutoResponder.xml
│
├─logs
│      __init__.py
│
└─model
    │  prettytable.py  PrettyTable模块
    │  __init__.py
    │
    ├─paramiko  paramiko 模块
    │
    └─__pycache__
            prettytable.cpython-36.pyc
            __init__.cpython-36.pyc
View Code

相关文章:

猜你喜欢
  • 2022-12-23
  • 2021-09-01
  • 2021-09-07
  • 2021-12-18
相关资源
相似解决方案