windows使用.bat文件批量执行任务
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
windows使⽤.bat⽂件批量执⾏任务
问题
在win环境下, 考虑到这样的场景, 需要运⾏许多中间件和⼯具, ⽐如redis、elasticsearch、rabbitMQ等(当然, docker了解⼀下), 这就使得每次开始就要打开控制台分别开启各个服务, ⼗分⿇烦, 我就寻思着是否可以⽤.bat批量⼀次性执⾏所有任务
解决
创建⽂本⽂档, 把后缀改为.bat⽂件类型
贴⼀下我的.bat⽂件
@echo off
::获取管理员权限
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
::cd到当前批处理⽂件所在⽬录
cd /d "%~dp0"
echo "启动redis"
start wt.exe D:\redis\Redis-x64-3.2.100\redis-server.exe D:\redis\Redis-x64-3.2.100\redis.windows.conf
echo "启动elasticsearch"
start wt.exe D:\elasticsearch\elasticsearch-6.2.2\bin\elasticsearch.bat
echo "启动kibana"
start wt.exe D:\elasticsearch\kibana-6.2.2-windows-x86_64\bin\kibana.bat
echo "启动MYSQL57服务"
start wt.exe net start MYSQL57
echo "启动MongoDB服务"
start wt.exe net start MongoDB
echo "启动rabbitMQ"
因为我的mysql服务需要管理员权限, 所以想启动mysql服务就必须获取管理员权限, 当然你也可以设置把mysql和mongoDB服务⼀直开着。
MYSQL57和MongoDB服务名是通过服务知道的
根据你⾃⼰的情况改写.bat⽂件, 没问题之后双击运⾏.bat
图2 运⾏批处理⽂件
瞬间开启n个控制台执⾏任务
我使⽤的是windows terminal窗⼝来运⾏, 如果你没有安装windows terminal那你就out了, 当然你也可以把wt.exe去掉, ⽤⾃带的控制台执⾏@echo off
::获取管理员权限
%1 mshta vbscript:CreateObject("Shell.Application").ShellExecute("cmd.exe","/c %~s0 ::","","runas",1)(window.close)&&exit
::保持当前⽬录下运⾏
cd /d "%~dp0"
echo "启动MYSQL57服务"
start net start MYSQL57
echo "启动redis"
start D:\redis\Redis-x64-3.2.100\redis-server.exe D:\redis\Redis-x64-3.2.100\redis.windows.conf
echo "启动elasticsearch"
start D:\elasticsearch\elasticsearch-6.2.2\bin\elasticsearch.bat
echo "启动kibana"
start D:\elasticsearch\kibana-6.2.2-windows-x86_64\bin\kibana.bat
echo "启动MongoDB服务"
start net start MongoDB
echo "启动rabbitMQ"
祝你编程愉快!。