问下如何能保证pm2进程一直存在?
情况是这样的,我在windows系统下执行pm2命令,然后就有几个pm2的进程,然后我想加一个定时任务,能定时重启该进程
我用终端窗口执行:pm2 pid index
5072
12820
24200
得到三个进程id
我想如何写一个bat文件,当获取到有进程存在,那就不重启进程,如果进程不存在那就重启进程
上 GPT 吧
pm2的作用就是进程守护啊,咋还在外面套一层
supervisor 再套一层
建议抽空学习下
linux systemd
模块,用systemd
管理pm
进程服务。要实现这个功能,你可以使用以下的步骤:
创建一个新的 .bat 文件。 在 .bat 文件中,首先检查 pm2 进程是否存在。 如果存在,则不执行任何操作。 如果不存在,则重启 pm2 进程。 以下是一个简单的示例 .bat 文件:
bat @echo off
REM 检查 pm2 进程是否存在
tasklist | findstr "pm2.exe" > nul
if %errorlevel% neq 0 (
echo pm2 进程不存在,正在重启...
call pm2 restart [进程ID或名称]
exit /b
)
echo pm2 进程已存在,无需重启。
exit /b 在上面的脚本中,你需要替换 [进程ID或名称] 为你想要重启的 pm2 进程的 ID 或名称。如果你想要重启所有 pm2 进程,你可以移除这部分并直接调用 pm2 restart all。
保存上述内容为 check_pm2.bat 或其他你喜欢的名称,然后双击运行它。如果 pm2 进程不存在,它将尝试重启指定的进程。如果存在,它将不会执行任何操作。
windows 也有服务管理的 ,
sc
命令了解下,你把pm2当成服务加进去