由于日常测试需要,经常需要在测试环境开一些乱七八糟的程序,开就开吧,但是还有一些乱七八糟的用户名和密码,程序多的话,用户名和密码经常记不住,有时候吧,还会露开,浪费蛮多时间的。想了想关于自动化运维的程序我也就用过AutoHotKey。索性研究了下,用这个脚本写了个,特来分享一下。
需求分析
- 一共四台机器,每台机器的一个Tab页(标签页)。
- 每个Tab页里面都有这台机器要开的程序。需要输入的用户和密码都写死。否则容易出现泄漏密码的情况。
- 每个程序都是一个勾选框,可以选择开那几个程序。
- 程序开启和关闭的顺序是有要求的,有些必须先拨VPN才能开后面的程序。程序写死顺序。
- 如果选择启动顺序,首先先检查程序是否存在,存在则关闭先。
- 每台机器都有哪些程序和程序的名字路径等等都配置在configure.ini文件中。
- 程序启动默认哪个标签,需要看程序的名字中是否跟配置文件中的机器名称一致,一致的话则默认选择该标签页。
- 启动或者停止后,能够弹出相关结果提示框。
- 有全选和全不选按钮,增加快捷键。
- 还有一些程序启动的时候需要特殊处理等等。
- 部署一个服务端,在服务端就可以开启各台机器需要的程序。(目前没做到)
程序截图
配置文件
configure.ini(第一行不读入,分号打头的为注释行,空行不读入)
View Code TEXTDownload 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文件不能打包进去。。。。。。
源代码下载
后期计划
目前有些公司正式在使用的自动化运维程序是AutoIt语言,后期打算学习下这个。
>> 若为原创,转载请注明: 转载自Laycher's Blog
>> 本文链接地址: 利用AutoHotKey做一个自动化运维程序
>> 订阅本站: http://feed.feedsky.com/laycher