Batch file venv&;使用.bat文件自动部署时的本地主机

Batch file venv&;使用.bat文件自动部署时的本地主机,batch-file,flask,virtualenv,Batch File,Flask,Virtualenv,我正在尝试创建一个批处理文件,只需单击Windows即可启动我的应用程序。我有: cd "C:\Users\<project_dir>" venv\scripts\activate python __init__.py start /d "C:\Program Files (x86)\Google\Chrome\Application\" chrome.exe localhost:5000 cd“C:\Users\” venv\scripts\activate python\uuu

我正在尝试创建一个批处理文件,只需单击Windows即可启动我的应用程序。我有:

cd "C:\Users\<project_dir>"
venv\scripts\activate
python __init__.py
start /d "C:\Program Files (x86)\Google\Chrome\Application\" chrome.exe localhost:5000
cd“C:\Users\”
venv\scripts\activate
python\uuuu init\uuuuu.py
开始/d“C:\ProgramFiles(x86)\Google\Chrome\Application\”Chrome.exe本地主机:5000
问题1:虽然
venv\scripts\activate
可以手动工作,但它在批处理文件中不起作用(我也尝试了
start/d

问题2:使用python启动Flask服务器会导致批处理脚本暂停,因此浏览器永远不会启动

这应该有效:

cd "C:\Users\<project_dir>"
start venv\scripts\python __init__.py
start /d "C:\Program Files (x86)\Google\Chrome\Application\" chrome.exe localhost:5000
cd“C:\Users\”
启动venv\scripts\python\uuuu init\uuuuuu.py
开始/d“C:\ProgramFiles(x86)\Google\Chrome\Application\”Chrome.exe本地主机:5000
我已经解决了您的问题#1,直接使用虚拟环境,而不激活它。您还可以执行
call venv\scripts\activate
,然后使用
start python\uuu init\uuuu.py
调用脚本

问题#2可以通过
启动运行服务器来解决,以便生成新进程。

这应该可以:

cd "C:\Users\<project_dir>"
start venv\scripts\python __init__.py
start /d "C:\Program Files (x86)\Google\Chrome\Application\" chrome.exe localhost:5000
cd“C:\Users\”
启动venv\scripts\python\uuuu init\uuuuuu.py
开始/d“C:\ProgramFiles(x86)\Google\Chrome\Application\”Chrome.exe本地主机:5000
我已经解决了您的问题#1,直接使用虚拟环境,而不激活它。您还可以执行
call venv\scripts\activate
,然后使用
start python\uuu init\uuuu.py
调用脚本


问题#2通过
start
运行服务器来解决,从而产生一个新的进程。

您能否指定
venv\scripts\activate
的作用。它在Windows中启动虚拟环境()。请指定
venv\scripts\activate
的作用。它将在Windows()中启动虚拟环境。谢谢,米格尔。确实如此,尽管是在关闭命令提示符的同时打开Python(命令行)。您知道如何在命令提示符中执行此操作吗?用于停止和重新启动服务器。请尝试使用
pythonw
而不是
python
。谢谢。包含命令提示符的脚本,但命令提示符仍然关闭。有没有办法保持命令提示符打开(就像手动输入命令一样)?谢谢,米格尔。确实如此,尽管是在关闭命令提示符的同时打开Python(命令行)。您知道如何在命令提示符中执行此操作吗?用于停止和重新启动服务器。请尝试使用
pythonw
而不是
python
。谢谢。包含命令提示符的脚本,但命令提示符仍然关闭。有没有办法保持命令提示符打开(就像手动输入命令时一样)?