我这里有一个Python虚拟环境:/home/hao/venv,这里有一个Python脚本:/home/hao/scripts/test.py
我的 python 脚本需要存储在 venv 中的模块。因此,我需要激活 venv 然后运行脚本
由于 cron 任务,我想每 5 分钟执行一次。
也许,你可以帮忙。
谢谢
在 cron 作业中激活 Python 虚拟环境需要一些额外的工作,因为 cron 作业不在与典型用户会话相同的环境中执行。以下是有关如何实现此目标的分步指南:
识别虚拟环境路径:确保您知道 Python 虚拟环境的完整路径。通常可以在项目目录的 venv 或 env 文件夹下找到它。
更新您的脚本:修改您的 Python 脚本或 shell 脚本(如果您正在使用)以包含虚拟环境中 Python 解释器的完整路径。更新脚本开头的 shebang 行。例如,如果您的虚拟环境位于 /home/hao/venv,则更新后的 shebang 行可能如下所示:
重击
#!/home/hao/venv/bin/python
确保您的脚本可执行(chmod +x /home/hao/scripts/test.py)。
修改您的 Cron 作业:在运行脚本之前,将 source 命令(或其简写 .)与虚拟环境中的 activate 脚本结合使用以激活它。另外,请在 cron 作业中提供脚本的完整路径。
以下是激活虚拟环境并每 5 分钟运行一次脚本的 cron 作业示例:
重击
0,5,10,15,20,25,30,35,40,45,50,55 * * * * cd /home/hao/scripts && . /home/hao/venv/bin/activate && /home/hao/scripts/test.py