windows - 批处理\CMD : Check if Apache is running else start it

标签 windows apache batch-file

使用批处理命令,我会每小时检查一次(使用 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/

相关文章:

apache - 在tomcat和apache http服务器之间配置SSL

c - 关于qpid交换,队列

windows - 批处理命令冲突

python - 如何使用 python 在 Windows 中关闭文件资源管理器

css - 如何获取 Apache Wicket PropertyColumn 数据以根据内容动态更改 CSS 类?

windows - 终端 Vim (Cygwin) 中的退格键

file - 批处理 : Remove file extension

batch-file - 如何将 if 语句与 WMIC 一起使用

windows - 如何在 Perl 中线程安全地设置 STDOUT 编码?

angular - wsl2 中的 Angular-CLI 比默认的 powershell 慢得多是否正常?