利用AutoHotKey做一个自动化运维程序
由于日常测试需要,经常需要在测试环境开一些乱七八糟的程序,开就开吧,但是还有一些乱七八糟的用户名和密码,程序多的话,用户名和密码经常记不住,有时候吧,还会露开,浪费蛮多时间的。想了想关于自动化运维的程序我也就用过AutoHotKey。索性研究了下,用这个脚本写了个,特来分享一下。

需求分析

  1. 一共四台机器,每台机器的一个Tab页(标签页)。
  2. 每个Tab页里面都有这台机器要开的程序。需要输入的用户和密码都写死。否则容易出现泄漏密码的情况。
  3. 每个程序都是一个勾选框,可以选择开那几个程序。
  4. 程序开启和关闭的顺序是有要求的,有些必须先拨VPN才能开后面的程序。程序写死顺序。
  5. 如果选择启动顺序,首先先检查程序是否存在,存在则关闭先。
  6. 每台机器都有哪些程序和程序的名字路径等等都配置在configure.ini文件中。
  7. 程序启动默认哪个标签,需要看程序的名字中是否跟配置文件中的机器名称一致,一致的话则默认选择该标签页。
  8. 启动或者停止后,能够弹出相关结果提示框。
  9. 有全选和全不选按钮,增加快捷键。
  10. 还有一些程序启动的时候需要特殊处理等等。
  11. 部署一个服务端,在服务端就可以开启各台机器需要的程序。(目前没做到)

程序截图

AutoOperations截图1

AutoOperations截图1

AutoOperations截图2

AutoOperations截图2

配置文件

configure.ini(第一行不读入,分号打头的为注释行,空行不读入)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
程序机器		¦	程序名称				¦	程序应用名			¦	程序目录	
;运行的exe的名字如果含程序机器的名字,比如NGTS1,则启动的时候标签页默认为NGTS1。			
;NGTS1
NGTS1			¦	上海VPN				¦	vpngui.exe			¦	C:\Program Files\Cisco Systems\VPN Client\vpngui.exe	
NGTS1			¦	上海行情				¦	biTransClient.exe	¦	C:\biTransClientV3\biTransClient.exe	
NGTS1			¦	上海EZSR行情			¦	EzSR.exe			¦	D:\EzSR\EzSR.exe
NGTS1			¦	上海A股报盘			¦	EzOES_ASHR.exe	¦	D:\EzOES_AB\EzOES_ASHR.exe
NGTS1			¦	上海B股报盘			¦	EzOES_BSHR.exe	¦	D:\EzOES_AB\EzOES_BSHR.exe
NGTS1			¦	中登PROP通用接口		¦	PropTrans.exe		¦	C:\PROP2000\PropTrans\bin\PropTrans.exe
NGTS1			¦	上海RptGet				¦	RptGet.exe			¦	D:\RptGet\RptGet.exe
 
;NGTS2
NGTS2			¦	上海VPN				¦	vpngui.exe			¦	C:\Program Files\Cisco Systems\VPN Client\vpngui.exe	
NGTS2			¦	中登网关服务控制器		¦	GateCtrl.exe		¦	C:\prop2000\GateCtrl.exe
NGTS2			¦	中登PROP通用接口		¦	PropTrans.exe		¦	C:\PROP2000\PropTrans\bin\PropTrans.exe
NGTS2			¦	中登PROP自动下载工具	¦	AutoDownload.exe	¦	C:\prop2000\Client\zdxz\AutoDownload.exe
NGTS2			¦	开放式基金通讯程序		¦	KFJJ.exe			¦	C:\Program Files\kfjj\bin\KFJJ.exe
 
;TWOWAY1
TWOWAY1		¦	深圳VPN				¦	iexplore.exe		¦	https://121.15.170.91/
TWOWAY1		¦	深圳行情				¦	深圳单向行情接收_深交所测试环境.exe	¦	D:\Recv\深圳单向行情接收_深交所测试环境.exe	
TWOWAY1		¦	深圳普通席位小站		¦	TWComm.exe		¦	C:\vsat\bin\TWComm.exe
TWOWAY1		¦	深圳综合协议行情		¦	BQClient.exe		¦	C:\sscc\ZHHQ\BQClient.exe
TWOWAY1		¦	深圳综合协议网关		¦	ZhjyComm.exe		¦	C:\sscc\zhjy\bin\ZhjyComm.exe
 
;TWOWAY2
TWOWAY2		¦	深圳VPN				¦	iexplore.exe		¦	https://121.15.170.91/
TWOWAY2		¦	深圳信用席位小站		¦	TWComm.exe		¦	C:\vsat\bin\TWComm.exe
TWOWAY2		¦	深圳顶点席位小站		¦	TWComm.exe		¦	C:\vsat_222100\bin\TWComm.exe
TWOWAY2		¦	深圳DCOM				¦	D-COM.exe		¦	D:\Program Files\SSCC\D-COM\D-COM.exe
TWOWAY2		¦	BSMR					¦	bsmr.exe			¦	D:\bsmr\bsmr.exe

程序代码

程序主要用两个ahk文件,
CustomFunctions.ahk    --自定义函数,用于定义停止相关程序,启动相关程序的一系列操作。例如输入用户名和密码等等。还有一些其它的相关函数。
AutoOperations.ahk        --自动化运维的主界面(GUI),以及相关按钮后的操作等等。
代码偏长,就不贴出来了,直接以文件的方式上传好了。感兴趣的可以下载看下。

程序运行

编译AutoOperations.ahk 文件,生成相应的exe文件,改名,例如 自动化运维_Twoway1.exe,那么启动的话就会默认选择TWOWAY1标签。ini文件不能打包进去。。。。。。

源代码下载

AutoOperations

后期计划

目前有些公司正式在使用的自动化运维程序是AutoIt语言,后期打算学习下这个。

>> 若为原创,转载请注明: 转载自Laycher's Blog

>> 本文链接地址: 利用AutoHotKey做一个自动化运维程序

>> 订阅本站: http://feed.feedsky.com/laycher



无觅相关文章插件,快速提升流量