使用命令提示符确定Tomcat是否在Windows中运行

Mir*_*ate 16 windows tomcat batch-file

很简单,如何使用命令提示符确定Tomcat是否在Windows中运行?

我正在写一个必须这样做的批处理脚本.这是Bash版本:

RESULT=`netstat -na | grep $2 | awk '{print $7}' | wc -l`
Run Code Online (Sandbox Code Playgroud)

其中2美元是港口.

我正在寻找类似的东西.使用Cygwin是不可能的,这个脚本必须能够在只有Tomcat的机器上运行.

Chr*_*mer 6

使用SC命令测试Tomcat服务的状态.MJB已经建议用SC测试服务状态,另一个批处理脚本(没有FOR循环)用于测试状态:

@ECHO OFF
SC query tomcat5 | FIND "STATE" | FIND "RUNNING" > NUL
IF ERRORLEVEL 1 (
    ECHO Stopped
) ELSE (
    ECHO Running
)
Run Code Online (Sandbox Code Playgroud)

如果您不确定服务名称是否为tomcat5,则可以列出所有服务名称

SC query state= all | FIND "SERVICE_NAME"
Run Code Online (Sandbox Code Playgroud)


wim*_*ica 5

您可以使用tasklist来检查tomcat可执行文件是否正在运行.例如:

@echo off
tasklist /FI "IMAGENAME eq tomcat.exe" | find /C /I ".exe" > NUL
if %errorlevel%==0 goto :running

echo tomcat is not running
goto :eof

:running
echo tomcat is running

:eof
Run Code Online (Sandbox Code Playgroud)

也可以使用选项检查删除服务器/S,/U以及/P.详情tasklist /?请见.