概述
- 在Linux用crontab定时运行py代码,用的是Anaconda3,
crontab -e使用* * * * * python ~/a.py和* * * * * python3 ~/a.py都出问题- 因为crontab环境不同,所以要指定全路径的Python
改成~/anaconda3/bin/python ~/a.py后成功
补充crontab基础知识
环境
crontab环境配置
cat /etc/crontab
root用户的
PATH(显然和crontab的不一样)
非root用户的
PATH(显然和crontab的不一样)
极简用例
- 添加或删除定时任务(edit)
crontab -e
- 以vim模式写入并保存
# 每分钟跑一次
* * * * * echo `pwd` > a.txt
- 查看定时任务列表(list)
crontab -l
- 检测
cat ~/a.txt

crontab+Anaconda示例
- 创建Python脚本
vim ~/a.py
import time, sys
with open(__file__.replace('py', 'txt'), 'w', encoding='utf-8')as f:
f.write(time.strftime('%Y-%m-%d %H:%M:%S\n')) # 当前时间
f.write(sys.version) # Python版本
- 添加定时任务
crontab -e
# 每分钟跑一次Python脚本
* * * * * ~/anaconda3/bin/python ~/a.py
- 检测
cat ~/a.txt

其它
- 首次运行
crontab -e可能出现select-editor,可选vim.basic - 通常任务频度是每天0点跑一次,写法
0 0 * * *



579



被折叠的 条评论
为什么被折叠?



