Linux Crontab 定时任务 及 Ubuntu 中cron指令使用

简介: 本文是博主学习linux定时任务的记录,希望对大家有所帮助

linux内置的cron进程能帮我们实现很多自动化需求,利用cron搭配shell脚本,即便十分复杂的指令也没有问题。
# 介绍
我们经常使用的是crontab命令是cron table的简写,我们可以在以下文件夹内找到相关配置文件。

  • /var/spool/cron/ 目录下存放的是每个用户包括root的crontab任务,每个任务以创建者的名字命名
  • /etc/crontab 这个文件负责调度各种管理和维护任务。
  • /etc/cron.d/ 这个目录用来存放任何要执行的crontab文件或脚本。
  • 还可以把脚本放在/etc/cron.hourly、/etc/cron.daily、/etc/cron.weekly、/etc/cron.monthly目录中,让它每小时/天/星期、月执行一次。

使用

常用的命令如下:

crontab [-u username]    //username表示操作当前用户的crontab
         -e      (编辑工作表)
         -l      (列出工作表里的命令)
         -r      (删除工作作)

编辑任务列表

crontab -e

使用crontab -e进入当前用户的工作表编辑,每一行都是一个定时任务。
在这里插入图片描述

crontab格式

crontab的命令构成为 时间+动作

时间构成

    Linux
    *    *    *    *    *
    -    -    -    -    -
    |    |    |    |    |
    |    |    |    |    +----- day of week (0 - 7) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat
    |    |    |    +---------- month (1 - 12) OR jan,feb,mar,apr ...
    |    |    +--------------- day of month (1 - 31)
    |    +-------------------- hour (0 - 23)
    +------------------------- minute (0 - 59)
字段 是否必填 允许值 允许特殊字符 备注
Minutes 0–59 * , -
Hours 0–23 * , -
Day of month 1–31 * , -
Month 1–12 or JAN–DEC * , -
Day of week 0–7 or SUN–SAT * , - Linux的允许值为0-7,0和7为周日

实例

  • 每1分钟执行一次 test.sh
* * * * * test.sh
  • 每小时的第3和第15分钟执行
3,15 * * * * test.sh
  • 每一小时执行
0 */1 * * * test.sh
  • 每周一上午8点到11点的第3和第15分钟执行
3,15 8-11 * * 1 test.sh

在Ubuntu 16.04上启动crontab

使用systemctl start cronb启动crontab,发现如下报错

Failed to start cronb.service: Unit cronb.service not found.

因为Ubuntu 16.04上的服务名称是cron不是crond

使用systemctl start cron,就正常启动了

检查Ubuntu的cron状态

ps -ef | grep cron

systemctl status cron.service

service cron status

/etc/init.d/cron status

以上四种方式都可以,出现active表示cron正常运行
在这里插入图片描述

目录
相关文章
|
5天前
|
Linux
Linux:文件读取指令
Linux:文件读取指令
11 2
|
4天前
|
Linux 程序员 Shell
【Linux】详解core dump文件的作用以及用法&&ubuntu20.04下无法形成core dump文件的解决办法
【Linux】详解core dump文件的作用以及用法&&ubuntu20.04下无法形成core dump文件的解决办法
|
5天前
|
缓存 安全 Linux
Linux入门基本指令(2)
Linux入门基本指令(2)
11 0
|
5天前
|
Linux Windows
Linux入门基本指令(1)-2
Linux入门基本指令(1)
9 1
|
5天前
|
Linux 数据安全/隐私保护 Windows
Linux入门基本指令(1)-1
Linux入门基本指令(1)
14 1
|
5天前
|
算法 Linux
Linux:文件增删 & 文件压缩指令
Linux:文件增删 & 文件压缩指令
7 0
|
5天前
|
Linux
Linux:时间指令 - cal & date
Linux:时间指令 - cal & date
11 2
|
6天前
|
人工智能 数据可视化 Unix
【Linux】Linux系统基础指令 ( 1 )
本文讲解的指令是基础的操作,下一篇文章我们将继续讲解不同指令。
17 0
|
6天前
|
存储 Unix Linux
【Linux修行路】基本指令(二)
【Linux修行路】基本指令(二)