如何在Linux crontab中运行scl enable rh-python36

因为scl enable rh-python36为Python创建新的虚拟环境,所以在这种环境中,您可以使用已安装的Python 3.6,但在crontab中运行时不会自动应用此虚拟环境。

因此,为了在Linux crontab中使用Python 3.6,您必须在激活的新虚拟环境中运行python文件。

我的run.sh文件:

#!/bin/bash
now=`date`
echo "[$now]Running script now ..."
scl enable rh-python36 "cd /opt/wdir/ && pipenv run python main.py" >> /var/log/logrun.txt
echo "[$now]All done now" 

和我的crontab:

* 7 * * * /opt/wdir/run.sh > /var/log/logrun.txt 

另一种方法是直接在crontab上设置scl:

* 7 * * *  scl enable rh-python36 "cd /opt/wdir/ && pipenv run python main.py" > /var/log/logrun.txt 

更多关于 Linux crontab here.

Happy working!

Related:  如何使用VirtualHost多域VPS上的Certbot续订Let's加密SSL

Leave a Reply

Your email address will not be published. Required fields are marked *