我正在为python服务创建一个web控制器,以便用户可以启动和停止服务。我需要知道服务是否正在运行。
我想检查python是否从cmd
运行我的脚本。 echo 1
如果正在运行我的脚本echo 0
如:
if (python is running bot.py) (
echo 1
)
答案 0 :(得分:1)
在普通cmd中有点棘手,但这似乎有效:
@echo off
tasklist.exe /V /FI "IMAGENAME eq cmd.exe" /FO LIST | find "bot.py" >nul
if ERRORLEVEL 1 (
echo 0
) else (
echo 1
)
答案 1 :(得分:0)
你可能最好有一个由运行的机器人创建的文件,其中包含它们的PID,然后检查是否存在这个文件。它可以让你获得PID,但它确实依赖于干净地终止进程。
这与锁定文件类似,可用于同时停止在同一数据上运行的程序的2个实例。