【发布时间】:2022-11-12 00:26:16
【问题描述】:
尝试创建一个 Windows .bat 文件来实现以下功能:
cd C:\repo\demo
venv\Scripts\activate
python test.py
在 Visual Studio Code 终端窗口中,我可以毫无问题地运行上述行。
创建了一个 .bat 文件,如下所示:
cd C:\repo\demo
"C:\Users\jw\AppData\Local\Programs\Python\Python310\python.exe" "venv\Scripts\activate"
"C:\Users\jw\AppData\Local\Programs\Python\Python310\python.exe" "python test.py"
pause
当双击上面的 .bat 文件运行它时,以错误结束:
如果 [ "${BASH_SOURCE-}" = "$0" ];然后
SyntaxError:无法在此处分配给文字。也许你的意思是'=='而不是'='?
还尝试了下面的 .bat 代码,也不起作用:
cd C:\repo\demo venv\Scripts\activate python test.py pause如何更正 .bat 文件以使其正常工作?
【问题讨论】:
-
您顶部的脚本执行
venv\Scripts\activate,但在您的bat 中,您正在调用python 并将activate 作为参数传递。据我所知,activate 是一个可执行文件,您不必将其作为 python 参数传递 -
1.
@CD /D "C:\repo\demo" 2>NUL || Exit /B2.@Call "venv\Scripts\activate.bat"3.@If Not ErrorLevel 1 "%LocalAppData%\Programs\Python\Python310\python.exe" "python heatmap.py"4.@Pause
标签: python batch-file