博客
关于我
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/

你可能感兴趣的文章
mysql一个字段为空时使用另一个字段排序
查看>>
MySQL一个表A中多个字段关联了表B的ID,如何关联查询?
查看>>
MYSQL一直显示正在启动
查看>>
MySQL一站到底!华为首发MySQL进阶宝典,基础+优化+源码+架构+实战五飞
查看>>
MySQL万字总结!超详细!
查看>>
Mysql下载以及安装(新手入门,超详细)
查看>>
MySQL不会性能调优?看看这份清华架构师编写的MySQL性能优化手册吧
查看>>
MySQL不同字符集及排序规则详解:业务场景下的最佳选
查看>>
Mysql不同官方版本对比
查看>>
MySQL与Informix数据库中的同义表创建:深入解析与比较
查看>>
mysql与mem_细说 MySQL 之 MEM_ROOT
查看>>
MySQL与Oracle的数据迁移注意事项,另附转换工具链接
查看>>
mysql丢失更新问题
查看>>
MySQL两千万数据优化&迁移
查看>>
MySql中 delimiter 详解
查看>>
MYSQL中 find_in_set() 函数用法详解
查看>>