博客
关于我
Linux的 /etc/crontab
阅读量:730 次
发布时间:2019-03-21

本文共 1460 字,大约阅读时间需要 4 分钟。

Linux 命令 Crontab 入门与实践指南

Linux 系统中的计划任务安排其实是由 crond 这个守护进程负责的。安装完操作系统后,这个服务会自动启用,并且每分钟会循环检查是否有任务需要执行。如果有,就自动运行相应的指令。对于那些习惯了 Windows 的计划任务安排的人来说,crontab 命令可能会显得有点陌生,但它是 Linux系统下的核心工具之一。

Crontab 的基本语法理解

在 Linux 中,crontab 命令允许用户定义计划任务,使用的语法规则包含以下几个关键要素:

1. 时间单位解析

crontab命令中的时间单位包括:

  • 分钟(*): 可能性最大的选项,表示“每分钟”或“所有可能的分钟”。
  • 小时(*): 需要结合其他字段使用。
  • 天(*): 可选值通常会是“全天”。
  • 星期(*): 可选值可以是“每天”(0-6)。
  • 月份(*): 可选值通常是“每个月”。
  • 日期(*): 可选星号通常意味着“每个日期”,但可以与其他时间单位组合。

2. 细节说明

  • 星号(*): 表示所有可能的值。
  • 逗号(,): 用于列出有限的值。
  • 中杠(-): 表示范围(如 2-5 表示 2,3,4,5)。
  • 正斜线(/): 用于指定间隔频率(如 0-23/2 表示每2小时检查一次)。

常见用法示例

例子1:每分钟运行一次命令

* * * * * your_command

例子2:每小时的第3、15分钟运行一次

3,15 * * * * your_command

例子3:在每天上午8点至11点之间的第3和15分钟

3,15 8-11 * * * your_command

例子4:每天8点至11点的每2个小时运行

3,15 8-11 */2 * * * your_command

例子5:每个星期一的上午11点

0 11 * * 1 your_command

例子6:晚上11点重启 SMB 服务

30 21 * * * /etc/init.d/smb restart

例子7:每月1日、10日、22日的上午4:45

45 4 1,10,22 * * your_command

例子8:每周六、周日的上午1:10

10 1 * * 6,0 your_command

例子9:每天晚上6点至午夜之间每半小时重启服务

0,30 18-23 * * * your_command

例子10:每个星期六的晚上11点

0 23 * * 6 your_command

例子11:每个小时运行一次

*oresolving cron job execution each hour.*/1 * * * * /etc/init.d/smb restart

例子12:晚上11点到早上7点,每个小时运行一次

23-7/1 * * * your_command

例子13:每月4日和周一至周三的上午11点

0 11 4 * mon-wed your_command

例子14:1月4日的上午4点

0 4 1 jan your_command

例子15:运行 cron.hourly目录内的脚本

01 * * * * root run-parts /etc/cron.hourly

适用的场景

了解了 crontab 的基本语法以后,可以根据自己的需求灵活调整时间参数。例如,为特定服务器重启服务、定期备份文件、执行系统检查等都能通过 crontab 实现。crontab 的高灵活性使其成为 Linux系统管理员和开发者的必备工具。

转载地址:http://qnngz.baihongyu.com/

你可能感兴趣的文章
mysql5.7的安装和Navicat的安装
查看>>
mysql5.7示例数据库_Linux MySQL5.7多实例数据库配置
查看>>
Mysql8 数据库安装及主从配置 | Spring Cloud 2
查看>>
mysql8 配置文件配置group 问题 sql语句group不能使用报错解决 mysql8.X版本的my.cnf配置文件 my.cnf文件 能够使用的my.cnf配置文件
查看>>
MySQL8.0.29启动报错Different lower_case_table_names settings for server (‘0‘) and data dictionary (‘1‘)
查看>>
MYSQL8.0以上忘记root密码
查看>>
Mysql8.0以上重置初始密码的方法
查看>>
mysql8.0新特性-自增变量的持久化
查看>>
Mysql8.0注意url变更写法
查看>>
Mysql8.0的特性
查看>>
MySQL8修改密码报错ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
查看>>
MySQL8修改密码的方法
查看>>
Mysql8在Centos上安装后忘记root密码如何重新设置
查看>>
Mysql8在Windows上离线安装时忘记root密码
查看>>
MySQL8找不到my.ini配置文件以及报sql_mode=only_full_group_by解决方案
查看>>
mysql8的安装与卸载
查看>>
MySQL8,体验不一样的安装方式!
查看>>
MySQL: Host '127.0.0.1' is not allowed to connect to this MySQL server
查看>>
Mysql: 对换(替换)两条记录的同一个字段值
查看>>
mysql:Can‘t connect to local MySQL server through socket ‘/var/run/mysqld/mysqld.sock‘解决方法
查看>>