需求:
之前启动项目要手动打开 Anaconda Powershell Prompt (anaconda3),激活环境,进入文件夹启动项目,现需将脚本变为windows服务,故需先编写脚本一键启动。
问题
1.常规写bat脚本,无法执行conda指令激活环境。
先看一下最终脚本
脚本编写
- 用脚本启动anaconda3方法
打开Anaconda终端属性,将目标中的内容
%windir%\System32\cmd.exe “/K” C:\Users\Jim\anaconda3\Scripts\activate.bat C:\Users\Jim\anaconda3
中的C:\Users\Jim\anaconda3\Scripts\activate.bat C:\Users\Jim\anaconda3拷贝出来
在脚本第一行写:Call + 拷贝出来的部分
2.激活虚拟环境
常规方法应该是conda activate [虚拟环境名称]
但是当把这条写在bat中,这个是可以执行的,但再往后的语句就不会执行了。
因此换个思路,我们发现第一行的脚本C:\Users\Jim\anaconda3这个环境就是base环境,将这个换成需要的虚拟环境目录就可以了。
环境名在C:\Users\Jim\anaconda3\envs里,照着最终脚本的样子修改就可以了。
3.进入目录,执行脚本
剩下的,就不赘述了。
注意脚本带中文路径,保存成ansi编码,用utf-8找不到路径。
大神绕道,轻喷。