Cron 定时任务入门:让电脑替你记住每天的重复事

举报
yd_213681363 发表于 2026/10/29 13:16:15 2026/10/29
【摘要】 Cron 定时任务入门:让电脑替你记住每天的重复事每天固定要做的事——备份文件、清理临时目录、定时拉取数据——最怕的不是难,而是忘。Linux 的 cron 就是为这种事准备的:把“什么时间、做什么事”写成一行规则,系统到点自动执行,不用人守着。 一、cron 的一行规则怎么写打开当前用户的定时任务表:crontab -e每一行就是一个任务,格式是五个时间字段加一条命令:分 时 日 月 星...

Cron 定时任务入门:让电脑替你记住每天的重复事

每天固定要做的事——备份文件、清理临时目录、定时拉取数据——最怕的不是难,而是忘。Linux 的 cron 就是为这种事准备的:把“什么时间、做什么事”写成一行规则,系统到点自动执行,不用人守着。

一、cron 的一行规则怎么写

打开当前用户的定时任务表:

crontab -e

每一行就是一个任务,格式是五个时间字段加一条命令:

分 时 日 月 星期 命令

例如每天早上 7 点备份一个目录:

0 7 * * * tar -czf /backup/home-$(date +\%Y\%m\%d).tar.gz /home/user/docs

注意两点:一是 % 在 crontab 里有特殊含义,命令里要用 \% 转义;二是星号 * 表示“每”,*/30 表示“每 30 分钟”。

二、新手最容易踩的三个坑

第一,环境变量不一样。 cron 执行时的 PATH 很小,命令最好写绝对路径,比如用 /usr/bin/python3 而不是 python3,脚本开头也写明解释器。

第二,输出没地方看,出错也不知道。 给每个任务加上日志重定向,出了问题先看日志再动手:

30 2 * * * /home/user/backup.sh >> /home/user/backup.log 2>&1

第三,任务没跑先别怀疑系统。 先查三件事:规则里的五个字段有没有写错位置、脚本本身手动跑一遍能不能通、cron 服务有没有在运行(systemctl status cron)。

三、从一个小任务开始

别一上来就排一整套自动化。先挑一件每天都做、失败了也不心疼的事,比如每天凌晨清理下载目录里 30 天前的文件:

0 3 * * * find /home/user/Downloads -type f -mtime +30 -delete

跑顺一周,再慢慢加上备份、提醒、报表。自动化真正的价值不在一次省多少时间,而在它每天都准时、不请假、不忘记。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。