【Python自学笔记】Ubuntu环境下如何使用Crontab定时自行Python程序


Ubuntu安装Crontab

安装代码

安装:apt-get install cron
启动:service cron start
重启:service cron restart
停止:service cron stop
检查状态:service cron status

使用命令

使用cron帮助:man crontab
查询cron可用的命令:service cron
编辑设置命令:sudo crontal -e
检查Cronta工具是否安装:crontab -l

Cron格式

常用基本格式:
* * * * * 命令 执行文件 >> 保存日志路径 2>&1
注意:后面那个2>&1的意思是把错误的输出也输出到标准输出(2表示错误,2>表示错误输出,&表示等同于,1表示正确),因此如果运行出错也会把错误输出到之前定义的log中。

crontab中的每一行代表一个定期执行的任务,分为6个部分。前5个部分表示何时执行命令,最后一个部分表示执行的命令。每个部分以空格分隔,除了最后一个部分(命令)可以在内部使用空格之外,其他部分都不能使用空格。前5个部分分别代表:分钟,小时,天,月,星期,每个部分的取值范围如下:

分钟          0 - 59
小时          0 - 231 - 311 - 12
星期          0 - 6       0表示星期天 

除了这些固定值外,还可以配合星号(*),逗号(,),和斜线(/)来表示一些其他的含义:

星号          表示任意值,比如在小时部分填写 * 代表任意小时(每小时)
逗号          可以允许在一个部分中填写多个值,比如在分钟部分填写 1,3 表示一分钟或三分钟
斜线          一般配合 * 使用,代表每隔多长时间,比如在小时部分填写 */2 代表每隔两分钟。所以 */1* 没有区别
                  */2 可以看成是能被2整除的任意值。
                  
    *        *    *    *    *                  # 每隔一分钟执行一次任务    
    0        *    *    *    *                  # 每小时的0分执行一次任务,比如6:00,10:00    
    6,10     *    2    *    *                  # 每个月2号,每小时的6分和10分执行一次任务    
    */3,*/5  *    *    *    *                  # 每隔3分钟或5分钟执行一次任务,比如10:03,10:05,10:06  

0 7 * * *    /bin/ls              #每天早上7点执行一次 /bin/ls 
0 6-12/3 * 12 * /usr/bin/backup     #在 12 月内, 每天的早上 6 点到 12 点中,每隔3个小时执行一次 /usr/bin/backup
0 17 * * 1-5  mail -s "hi" alex@domain.name < /tmp/maildata      #周一到周五每天下午 5:00 寄一封信给 [email protected] 
0 0-23/2 * * *  echo "haha" >> /tmp/haha.txt       #每月每天的午夜 0 点 20 分, 2 点 20 分, 4 点 20 分....向 /tmp/haha.txt 文件中写入 haha

定时执行python程序

  • 更多免费分享请点击这里

  • 在桌面上打开终端

  • 输入:sudo crontab -e

  • 进入文档按i进入编辑模式

  • 然后输入: * * * * * python /路径/文件.py >> /路劲/log.log 2>&1

  • 或者输入python的绝对路径: * * * * * usr/bin/python2.7(或python3) /路径/文件.py >> /路径/log.log 2>&1

  • Esc退出编辑模式,然后输入:wq保存配置

  • crontab -l查看配置文件内容

发布了47 篇原创文章 · 获赞 1 · 访问量 1181

猜你喜欢

转载自blog.csdn.net/xiaoqiangclub/article/details/104475880