我正在为python服务制作一个web控制器,以便用户可以启动和停止服务。我需要能够知道服务是否正在运行。批处理测试如果python.exe运行特定文件
我想检查python是否从cmd
运行我的脚本。 echo 1
如果正在运行我的脚本,否则echo 0
如:
if (python is running bot.py) (
echo 1
)
我正在为python服务制作一个web控制器,以便用户可以启动和停止服务。我需要能够知道服务是否正在运行。批处理测试如果python.exe运行特定文件
我想检查python是否从cmd
运行我的脚本。 echo 1
如果正在运行我的脚本,否则echo 0
如:
if (python is running bot.py) (
echo 1
)
你很可能是最好关闭具有被运行中的机器人创建了一个文件,其中包含其PID,然后检查了这个文件的存在。它可以让你获得PID,但它确实依赖于被干净地终止的进程。
这与锁文件类似,它可以用来停止同时在同一数据上运行的程序的2个实例。
它是在普通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
)
不清楚你在问,请编辑和添加更多的细节什么 – TomEus
添加排序为例 – BaleineBleue
,你可以创建一个实际的使用PyWin32的Windows服务。可以使用服务API或通过sc.exe从命令行启动,停止和查询服务。 – eryksun