Fellow Travellers

9、Linux定时任务调度

万世威
字数统计: 473阅读时长: 2 min
2019/04/22 Share

Linux定时任务调度

crond任务调度

​ 系统在某个时间段执行特定的命令或程序。

1、数据库的定时备份操作。

2、系统一些重复工作,病毒扫描等。

用法

crontab 【选项】

-e:编辑crontab定时任务

-l:查询crontab任务

-f:删除当前用户所有的crontab任务

-r:终止任务调度

service crond restart:重启任务调度

1
2
crontab -e
*/1 * * * * ls -l /etc > /tmp/to.txt -- 每小时的每分钟执行
  • 第一个*:一小时中的第几分钟【0-59】
  • 第二个*:一天中的第几个小时【0-23】
  • 第三个*:一个月当中的第几天【1-31】
  • 第四个*:一年中的的第几月【1-12】
  • 第五个*:一周当中对的星期几【0-7 0和7都表示 周日】
特殊符号 说明
* 代表任意时间
不连续的时间范围,0 8,12,15 *,每天8、12、15点执行。
- 连续的时间范围,0 5 1-6,周一到周六的凌晨5点执行。
*/n 每隔多久执行一次,/10 *,每隔10分钟执行一次。

示例

示例 含义
45 22 * 每天22点45分执行
0 17 1 每周一的17点0分执行
0 5 1,15 每月1、15号的凌晨5点0分执行
40 4 1-5 每周一到周五凌晨4点40分执行
/10 4 每天凌晨4点,每隔10分钟执行一次。5点就不执行了
0 0 1,15 * 1 每月1、15号、每周一的0点0分执行

实际操作

1、每隔1分钟,当前日期信息,写入 文件中。

  • vim /home/wsw/mytask1.sh
    • date >> /home/wsw/dates.txt
  • 给mytask1.sh 执行权限

    • chmod 744 /home/wsw/mytask1.sh
  • crontab -e

  • /1 * /home/wsw/mytask1.sh

2、每天凌晨2点,mysql数据库 testdb、备份。

  • vim /home/wsw/mytask2.sh
    • /usr/local/mysql/bin/mysqldump -u root -proot testdb > /tmp/db.bak
  • chmod 744 /home/wsw/mytask2.sh
  • crontab -e
  • 0 2 * /home/wsw/mytask2.sh
CATALOG
  1. 1. Linux定时任务调度
    1. 1.1. crond任务调度
      1. 1.1.0.1. 用法
      2. 1.1.0.2. 示例
      3. 1.1.0.3. 实际操作