Linux定时任务 - crontab详情
crontab 是一个用于创建、编辑和管理用户的定时任务的命令,可以让用户在指定的时间自动执行指定的命令或脚本。
1、crontab语法
crontab [OPTION] SCRIPT
[OPTION]:选项, SCRIPT:表示可执行的命令或脚本。
1.1、OPTION选项
-e | 编辑用户的crontab文件 |
-l | 列出用户当前的crontab内容 |
-r | 删除用户的crontab文件 |
-i | 在删除用户crontab文件之前进行确认 |
1.2、SCRIPT
SCRIPT 一般指可执行的命令或是脚本。
2、crontab文件格式
2.1、格式说明
crontab文件中每一行代表一个定时任务,如下:
# 第一个 * 表示分钟 (0-59)
# 第二个 * 表示小时 (0-23)
# 第三个 * 表示日期 (1-31)
# 第四个 * 表示月份 (1-12)
# 第五个 * 表示星期 (1-7)
# 第六个 * 表示分钟 (0-59)
* * * * * command
2.2、通配符
在crontab文件中可使用通配符,通配符详情如下:
* | 所有匹配的值 |
, | 指定多个值 |
- | 表示一个范围值 |
/ | 重复的频率 |
2.3、示例
* * * * * command | 每分钟执行一次 |
0 * * * * command | 每小时执行一次 |
0 0 * * * command | 每天 00:00 执行一次; |
0 0 * * 1 command | 每周一 00:00 执行一次 |
0 0 1 * * command | 每月1号 00:00 执行一次 |
3、crontab文件存放位置
每个用户都可有自己的 crontab 文件,存储在 /var/spool/cron 目录中;
root用户的 crontab 文件通常存储在 /etc/crontab 文件中。
4、crontab文件的加载
crontab启动时会读取crontab文件并加载定时任务, 可使用如下命令将 crontab 文件重新加载。
servie crond restart
5、应用
需求:每分钟记录时分秒到指定文件。
5.1、新建SCRIPT脚本
新建 record_date.sh 脚本,记录时分秒到指定文件。
#!/bin/sh
echo $(date -d now +%H:%M:%S) >> /root/text.log
5.2、配置 crontab 文件
crontab -e
# 配置每分钟执行一次 record_date.sh 脚本
*/1 * * * * /root/record_date.sh
5.3、查看执行结果
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)