为了方便利用python对F5设备进行操作,本文将togglepoolmember.pl对F5设备的控制写成了python模块,源代码例如以下:

#!/usr/bin/python
# -*- coding: utf-8 -*-
import os
import sys
import json
import subprocess
#def f5_status(pool=sys.argv[1],ip=sys.argv[2]):
def f5_status(pool,ip):
res = subprocess.Popen(["/usr/bin/perl","/scripts/togglepoolmember.pl","F5设备IP","端口","用户","password","%s" %(pool)],stdout=subprocess.PIPE,stderr=subprocess.PIPE,close_fds=True)
result = res.stdout.readlines()
a = "".join(result[4:-1]).split("%s" %(ip))[-1].split(")")[0].split("_")[-1]
e = json.dumps(a)
return e
def f5_exec(pool,ip,port):
res = subprocess.Popen(["/usr/bin/perl","/scripts/togglepoolmember.pl","F5设备IP","端口","用户","password","%s" %(pool),"%s:%s" %(ip,port)],stdout=subprocess.PIPE,stderr=subprocess.PIPE,close_fds=True)
result = res.stdout.readlines()
d = json.dumps(result)
return d
#測试时用的,做为模块使用时请凝视以下
print f5_exec('pool名称','pool成员IP','pool成员端口')
#print f5_status('pool名称','pool成员IP')

最新文章

  1. ElasticSearch 入门笔记1
  2. openssl证书制作详细教程
  3. MySQL运行状态show status中文详解(转)
  4. MySQL备份方式简介
  5. Jquery 随便写些知识点
  6. C:指针、数据类型、格式化输入输出、输入函数的坑点
  7. 理解MVVM模式
  8. CSS的魔法和魅力
  9. Retrofit 2.0 throwing @Field parameters can only be used with form encoding
  10. TOM大师脚本01-查找未建索引的外键
  11. 1.AJAX简介
  12. WCF代理是怎么工作的?用代码说话
  13. maven创建spring项目之后,启动报错java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoade
  14. shell 中test命令
  15. Sublime Text3介绍和插件安装——基于Python开发
  16. 前端之DOM
  17. [HEOI/TJOI2016]序列
  18. ionic Cannot find module 'internal/fs'问题
  19. Mvc_后端通用验证
  20. ELK 集群升级操作

热门文章

  1. PHP一维数组和二维数字排序整理
  2. DataSet导出Excel,比以往的方法导出的Excel外观更加好看
  3. 泛型Dictionary效率要大于HashTable!
  4. [LeetCode] Balanced Binary Tree 深度搜索
  5. 【ztree】zTree节点增删改
  6. vim的语法高亮及配置文件说明
  7. javascript 数据类型的一些方法总结
  8. Ubuntu中vim添加lua支持
  9. 关于getSystemResource, getResource 的总结
  10. 组队训练3回放 ——hnqw1214