我最近一直在尝试自动化我用来更新我管理的两个静态 GitHub 网站的站点地图的过程。该进程是一个 Python 程序,它进入
sitemap.xml
文件并在需要时更新其中的一部分。
为了使这个过程自动化,我决定编写一个可以运行站点地图更新程序的批处理脚本。但是,我想在 Anaconda Prompt 上运行批处理脚本,因为
sqlite3
插件尚未在其他命令行上激活;它只适用于 Anaconda Prompt。因此,我决定采用打开 Anaconda Prompt 命令行并一条一条运行命令的方法。
首先,我有一个文本文件,其中包含如下命令行代码:
@echo off
pushd Desktop
py updateSitemap.py
这是我尝试运行的实际批处理脚本:
@echo off
"Anaconda3 (64-bit)\Anaconda Prompt (Anaconda).lnk" < "sitemapUpdateCommands.txt"
根据语法,这应该将文本文件中的所有信息都放入命令行,但这没有用。
我有什么困惑吗?任何帮助都将不胜感激。
anaconda 提示只是调用
cmd.exe
并在其中激活 anaconda 脚本,您可以在脚本中执行此操作,如果 Anaconda3
安装在 C:\ProgramData\
(默认)中,脚本将如下所示。
@echo off
call C:\ProgramData\Anaconda3\Scripts\activate.bat
python -c "import sys; print(sys.executable)"
或针对您的情况
@echo off
call C:\ProgramData\Anaconda3\Scripts\activate.bat
call yourscript.bat
其中
yourscript.bat
是您尝试让 anaconda 在其命令提示符中执行的 .bat
脚本。 (它调用你的 python 脚本)。
要激活某个环境,请将其放在激活命令的末尾,如下所示。
@echo off
call C:\ProgramData\Anaconda3\Scripts\activate.bat myenv
call yourscript.bat