使用批处理命令,我会每小时检查一次(使用 Windows 调度程序)Apache Web 服务是否正在运行,如果没有,则启动它。
我找到了启动 Apache 的命令:
C:\apache\bin\https.exe start
但我不知道如何检查它是否已经启动。
我的Apache版本是2.4.3
我的基本想法(伪代码):
if Apache is Stop then
Apache Start
最佳答案
我相信以下内容会奏效
tasklist | find "httpd.exe"
if ERRORLEVEL = 1 "C:\apache\Bin\httpd.exe start"
我们正在使用 tasklist 命令查看正在运行的程序,并将其输出通过管道传输到我们正在寻找 httpd.exe 的 find 命令。如果 find 命令出现空白,则应将错误级别设置为 1,如果返回输出,则错误级别应设置为 0。如果错误级别为 1,则 if 命令应运行 Apache 启动命令,否则批处理脚本应退出。
我没有安装 Apache,因此您可能需要检查任务列表中的图像名称,但我能够使用 mmc.exe 验证功能。
关于windows - 批处理\CMD : Check if Apache is running else start it,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24414597/