module04-2-简单主机批量管理工具
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了module04-2-简单主机批量管理工具相关的知识,希望对你有一定的参考价值。
需求
1. 运行程序列出主机组或者主机列表
2. 选择指定主机或主机组
3. 选择让主机或者主机组执行命令或者向其传输文件(上传/下载)
4. 充分使用多线程或多进程
5. 不同主机的用户名密码、端口可以不同
目录结构
简单主机批量管理工具
├ bin # 执行文件目录
| └ SBHM.py # 执行程序
├ conf # 配置文件目录
| ├ hosts.ini # 配置文件。目前主要保存主机连接相关信息
| └ init_conf.py # 配置文件格式化程序
└ core # 程序核心代码位置
└ main.py # 主逻辑交互程序
代码
import os,sys basepath = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) sys.path.insert(0,basepath) from core import main main.main()
import configparser c = configparser.ConfigParser() c[‘proxy‘]={ ‘proxy1‘ : { ‘ip‘:‘192.168.1.76‘, ‘port‘:22, ‘username‘:‘root‘, ‘password‘:‘123456‘ }, ‘proxy2‘ : { ‘ip‘: ‘192.168.1.12‘, ‘port‘: 51123, ‘username‘: ‘root‘, ‘password‘: ‘123456‘ }, ‘proxy3‘: { ‘ip‘: ‘192.168.1.34‘, ‘port‘: 22, ‘username‘: ‘root‘, ‘password‘: ‘123456‘ } } c[‘upstream‘] = { ‘img‘: { ‘ip‘: ‘192.168.1.76‘, ‘port‘: 22, ‘username‘: ‘root‘, ‘password‘: ‘123456‘ }, ‘video‘: { ‘ip‘: ‘192.168.1.12‘, ‘port‘: 51123, ‘username‘: ‘root‘, ‘password‘: ‘123456‘ }, ‘static‘: { ‘ip‘: ‘192.168.1.34‘, ‘port‘: 22, ‘username‘: ‘root‘, ‘password‘: ‘123456‘ } } with open(‘hosts.ini‘,‘w‘,encoding=‘utf-8‘) as f: c.write(f)
import configparser c = configparser.ConfigParser() c[‘proxy‘]={ ‘proxy1‘ : { ‘ip‘:‘192.168.1.76‘, ‘port‘:22, ‘username‘:‘root‘, ‘password‘:‘123456‘ }, ‘proxy2‘ : { ‘ip‘: ‘192.168.1.12‘, ‘port‘: 51123, ‘username‘: ‘root‘, ‘password‘: ‘123456‘ }, ‘proxy3‘: { ‘ip‘: ‘192.168.1.34‘, ‘port‘: 22, ‘username‘: ‘root‘, ‘password‘: ‘123456‘ } } c[‘upstream‘] = { ‘img‘: { ‘ip‘: ‘192.168.1.76‘, ‘port‘: 22, ‘username‘: ‘root‘, ‘password‘: ‘123456‘ }, ‘video‘: { ‘ip‘: ‘192.168.1.12‘, ‘port‘: 51123, ‘username‘: ‘root‘, ‘password‘: ‘123456‘ }, ‘static‘: { ‘ip‘: ‘192.168.1.34‘, ‘port‘: 22, ‘username‘: ‘root‘, ‘password‘: ‘123456‘ } } with open(‘hosts.ini‘,‘w‘,encoding=‘utf-8‘) as f: c.write(f)
以上是关于module04-2-简单主机批量管理工具的主要内容,如果未能解决你的问题,请参考以下文章