crontab定时任务(待补充)

 cron是一个ubuntu下的后台进程,用来定期的执行一些任务

想让cron执行你指定的任务,首先就要编辑crontab文件。crontab是一个文本文件,用来存放你要运行的命令

第一种

vim /etc/crontab

第二种

crontab -e 编辑计划任务

第一次用这个命令,会让你选择文本编辑器

ubuntu默认的编辑器是nano,把它更改为vim,用下面的命令

select-editor 更改编辑器,选择数字

crontab -r

service cron status 查看cron服务状态

service cron start 启动cron服务

service cron restart  重启cron服务

crontab文件一般位于/etc下,这里面存放系统运行的调度程序

五个星号分别代表分0-59,小时0-23,日1-31,月1-12,星期0-6,0代表星期天

几个特殊符号

‘*’代表取值范围内的数字

‘/’代表每

‘-’代表从某个数字到某个数字

‘,’分开几个离散的数字

crontab -l列出当前的所有调度任务

实例分析:

1 创建脚本文件test.py,在文件开头需要加上下面一行

  #!/usr/bin/python

  上面这行的作用是说明使用那个解释器来执行该文件,如果不知道python解释器在哪,可以使用命令which python来查看

  2 给该文件添加可执行的权限

  chmod  +x  test.py

  注意:在脚本文件中如果涉及文件操作,请使用绝对路径,我就是在这上面掉坑里了。

  3 添加计划任务

  crontab -e

  在文件中追加一行,*/2 * * * * /usr/bin/python /home/pc/work/ENV/project/test.py

  保存退出,:wq

  4 重启cron服务

  service cron restart

  结束

其次,需要注意的有一下几点:

(1)在编辑crontab的时候,不能有空行,否则运行命令或者脚本不成功

(2)其次如果你运行的是

crontab -e 默认打开的是当前用户的crontab文件,而加sudo之后,运行的是root用户的

PS: 最好还是用crontab -u 用户名 -e 来执行

(3)我尝试定时执行gedit命令,但是没有成功,而mkdir命令成功了。

(4)当前登录用户只与当前用户的crontab有关,另外相关的crontab配置文件可以在 /var/spool/cron/crontabs 这个路径下找到,此处必须有root权限。

sudo service cron restart  使修改的crontab生效

原文地址:https://www.cnblogs.com/z-x-y/p/9254635.html