如何创建脚本以在命令行中启动我的 python 网络应用程序?
How can I create a script to launch my python web app in command line?
我有一个在命令提示符下运行的 python Flask Web 应用程序,我想创建一个脚本来每天自动启动该应用程序,或者准确地说,我需要脚本来启动该应用程序然后等待一天,终止它并立即再次启动它。这是因为我的数据库每天都在更新,如果我不重新启动 Web 应用程序,更改将不会在其中传输。我不知道如何为 windows 命令提示符编写脚本。这些是启动我的网络应用程序的命令:
cd c:\myAppFolder
python run.py
我使用 ctrl+c 来终止。
有人可以帮我解决这个问题吗?
在同一文件夹中创建另一个名为 restart.py
的文件并在其中添加此代码 -
import os
from time import sleep
while True:
os.system('start python run.py')
sleep(86400)#you can change this to the amount of seconds to sleep
os.system('taskkill /f /im python.exe')
然后代替 python run.py
运行 python restart.py
启动应用程序。
好吧,首先我不会在一个简单的脚本中执行此操作,而是在您的服务器上 24-7 运行并且具有时间意识的 daemon/agent。
类似于:
def check_app():
while True:
time.sleep(1)
now = dt.now()
if now > scheduled_update_time:
subprocess.Popen("Your CMD commands here")
scheduled_update_time = now + dt(days=1)
这有点伪代码,但您可以查看子进程和日期时间的确切 API。
如果您的应用部署在 linux 机器上或 windows 的 Windows 任务计划程序上,则另一种选择是使用 cron 计划。
如何将任务安排到 运行 一个 PowerShell 脚本 Windows 安排到 运行 每天 07:00(或任何需要的时间)。
虽然我使用了 notepad.exe
,但您需要将其更改为与您的应用相匹配的内容。
Get-Process | Where-Object { $_.CommandLine -match 'notepad.exe' } | Stop-Process
Start-Process -FilePath 'C:\Windows\System32\notepad.exe'
我有一个在命令提示符下运行的 python Flask Web 应用程序,我想创建一个脚本来每天自动启动该应用程序,或者准确地说,我需要脚本来启动该应用程序然后等待一天,终止它并立即再次启动它。这是因为我的数据库每天都在更新,如果我不重新启动 Web 应用程序,更改将不会在其中传输。我不知道如何为 windows 命令提示符编写脚本。这些是启动我的网络应用程序的命令:
cd c:\myAppFolder
python run.py
我使用 ctrl+c 来终止。
有人可以帮我解决这个问题吗?
在同一文件夹中创建另一个名为 restart.py
的文件并在其中添加此代码 -
import os
from time import sleep
while True:
os.system('start python run.py')
sleep(86400)#you can change this to the amount of seconds to sleep
os.system('taskkill /f /im python.exe')
然后代替 python run.py
运行 python restart.py
启动应用程序。
好吧,首先我不会在一个简单的脚本中执行此操作,而是在您的服务器上 24-7 运行并且具有时间意识的 daemon/agent。
类似于:
def check_app():
while True:
time.sleep(1)
now = dt.now()
if now > scheduled_update_time:
subprocess.Popen("Your CMD commands here")
scheduled_update_time = now + dt(days=1)
这有点伪代码,但您可以查看子进程和日期时间的确切 API。
如果您的应用部署在 linux 机器上或 windows 的 Windows 任务计划程序上,则另一种选择是使用 cron 计划。
如何将任务安排到 运行 一个 PowerShell 脚本 Windows 安排到 运行 每天 07:00(或任何需要的时间)。
虽然我使用了 notepad.exe
,但您需要将其更改为与您的应用相匹配的内容。
Get-Process | Where-Object { $_.CommandLine -match 'notepad.exe' } | Stop-Process
Start-Process -FilePath 'C:\Windows\System32\notepad.exe'