Linux 定时任务

在django项目中需要定时备份数据库,看网上都是用的django-crontab,crontab -e查看是有的,但是就是不执行,于是直接在项目启动时加载脚本执行定时任务

django-crontab

django-crontab 0.7.1

crontab

使用教程

怎么在项目启动时执行脚本

1、直接在manage.py中添加代码

#add your fun
execute_from_command_line(sys.argv)

2、在app的__init__.py中,要求app已经注册,比如

import os

default_app_config = "monitor.apps.MonitorConfig"
os.system('crontab -u root -r')
os.system('crontab  corn.sh')

corn.sh:
每天执行一次的任务,注意需要绝对路径,后面留个空行

0 0 * * *  sh /opt/xxx/do_job.sh



do_job.sh:

#!/bin/bash
#定时任务
cp /opt/backup.sql /tmp/$(date -d "today" +"%Y%m%d").sql

sqlite3 /opt/xxx/xxx.db  .dump  > /opt/backup.sql

posted @ 2018-04-26 17:43  懒企鹅  阅读(229)  评论(0编辑  收藏  举报