python项目在windows中的启动脚本(bat脚本)

背景:

之前在linux环境,使用shell脚本,实现对某个服务的启动、停止功能。
如果是在windows环境,如何使用bat脚本,实现python项目的启动、停止,如何实现window下的定时启动。

脚本的功能:

双击脚本,完成脚本的启动与关闭。通过增加进程信息存放文件,作为进程状态判断的依据。

  • 如果改文件存在,启动脚本时,脚本会把指定的项目/进程关闭,并删除存放进程信息的文件;
  • 如果该文件不存在,启动脚本时,脚本把指定的项目/进程启动,并生成存放进程信息的文件。

拿来主义脚本:

@echo off
rem 如果是python 项目
rem 激活python虚拟环境
SET "activate_venv=conda activate D:\work\envpy"
rem 进入项目路径
SET "projectPath=CD D:\FundDataAnalysis"
SET "CMD_OPTION=python main.py"
SET process_name="python.exe"

rem 如果是EXE
rem SET process_name="Snipaste.exe"

rem 保存进程信息到文件
SET pid_file=pid.txt

rem 执行脚本时
rem 如果进程文件存在,认为进程已经启动,进行关闭进程并删除进程文件
if exist %pid_file% (
TASKLIST /FO CSV /NH /FI "imagename eq %process_name% " > %pid_file%
ECHO 'kill %process_name%'
FOR /F "delims=, tokens=2,3" %%a IN (%pid_file%) do (
TASKKILL /F /PID %%a
)
DEL %pid_file%
) else (

rem 如果进程文件不存在,认为进程未启动,进行启动进程,创建进程文件
ECHO 'start and save %process_name% pid'

echo %activate_venv%
%activate_venv%

echo %projectPath%
%projectPath%

echo %CMD_OPTION%
rem %CMD_OPTION%

REM  start  /B /MIN  %CMD_OPTION%
title "My Batch Script"
start  ""  %CMD_OPTION%

TASKLIST /FO CSV /NH /FI  "imagename eq %process_name%" > %pid_file%
)

rem EXIT
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值