最近重新整理了一下之前用python实现的一个功能,该功能是一个定时任务,之前是用python的一个定时任务框架APScheduler实现的,后面觉得该服务每天只有两个时间点需要运行,没必要用python来实现定时任务,所以决定用Linux自带的crontab来定时执行脚本,这样也可避免万一python服务挂掉之后定时任务无法继续。
编辑文件 /etc/crontab:
vim /etc/crontab
加入需要执行的命令:
0 9 * * * root source /etc/profile && /usr/local/python3/bin/python3 /usr/local/project/data_exporter/app/manual_export_data.py >> /var/local/test.log 2>&1
保存即可。
其中加入source /etc/profile是因为python脚本里需要引用环境变量,需要该命令来获取环境变量。