crontab_定时执行任务(python)

ubuntu系统:

  1.默认ubuntu系统自带,但是需要启动sudo /etc/init.d/cron start

  2.ps aux | grep cron确认服务是否正常

  3.修改/etc/crontab文件进行定时任务: (sudo apt-get install vim-gtk#ubuntu系统可以安装vim工具)  

  4.开启crontab的日志功能:

    修改rsyslog文件,将/etc/rsyslog.d/50-default.conf 文件中的#cron.*前的#删掉;

    重启rsyslog服务sudo service rsyslog restart;

    重启cron服务sudo service cron restart;

    tail -f /var/log/cron.log-------------会自动弹出新增日志内容


0   7   *    *   *    root    mpg123 ~/wakeup.mp3 
分  时  日   月   周   权限      命令     文件

运行注意:

  虽然你直接python XXX.py可以的,但是在/et/crontab里面需要设置好运行命令的绝对路径和被执行文件的绝对路径,即可实现执行py文件

  在这非常感谢“匡子语”的帖子:https://www.cnblogs.com/dplearning/p/6633329.html

  简单粗暴的解决了crontab运行python文件由于环境变量的问题,我是小白,以下理解有问题请多多指教,之前在网上找了很多帖子,有的人运行py文件,用sh脚本,在里面通过#!/bin/sh方式然后在vim /etc/crontab 里面运行sh文件,但是我还是不行(执行权限和环境变量都没问题)。

  还有的人是通过修改crontab环境变量让其执行py文件的时候识别,其实既然crontab它本身不具备我们平时运行的环境变量,那我完全可以不要环境变量,即python版本的安装绝对路径如路径:/home/bingo/python/python3.4  py文件路径:etc/111.py   我们完全可以在crontab里面直接运行命令是(/home/bingo/python/python3.4 etc/111.py),以下是成功的截图,这就不存在环境变量的问题了,红色方框内容就是当crontab到时间执行这条命令的时候他直接找运行环境的路径的工具,然后执行后面路径的py文件,即可完美运行py文件。

 

后面在出现问题继续更新~


posted @ 2017-10-29 23:44  Bingo_Python  阅读(20677)  评论(0编辑  收藏  举报