menu 我的书签 Crontab使用指南:定时任务管理与示例
文章开始
文章结尾

什么是Crontab?

Crontab是一个位于UNIX和类UNIX操作系统中的任务调度工具。它允许用户根据预定的时间表在后台自动运行命令或脚本。Crontab非常适用于需要定期执行的任务,如备份、日志管理、定时生成报告等。

Crontab规则示例

  1. 每小时运行任务
shell0 * * * * /path/to/hourly_task.sh

这个任务每小时都会执行 /path/to/hourly_task.sh 脚本。

  1. 每天上午9点执行备份
shell0 9 * * * /path/to/daily_backup.sh

这个任务在每天上午9点执行备份脚本。

  1. 每个月的第一周五运行财务报告
shell0 0 * * 5 [ "$(date +\%d)" -le 07 ] && /path/to/financial_report.sh

这个任务在每个月的第一个周五的午夜之前(前七天内)执行财务报告脚本。

  1. 每周日早上6点重启服务器
shell0 6 * * 7 /sbin/reboot

这个任务每周日的早上6点重启服务器。

  1. 每小时检查网站可用性
shell0 * * * * /usr/bin/wget -q --spider http://example.com

这个任务每小时检查一次 http://example.com 网站的可用性。

  1. 每天午夜清理临时文件
shell0 0 * * * find /tmp -type f -mtime +1 -delete

这个任务每天午夜执行,清理 /tmp 目录中超过1天未被访问的临时文件。

  1. 每周一、周三、周五下午4点运行批处理任务
shell0 16 * * 1,3,5 /path/to/batch_processing.sh

这个任务在每周一、周三和周五的下午4点运行批处理脚本。

  1. 每隔5分钟检查系统资源使用情况
shell*/5 * * * * /path/to/check_resources.sh

这个任务每隔5分钟检查一次系统资源使用情况。

  1. 每月最后一天备份数据库
shell0 0 28-31 * * [ "$(date +\%d -d tomorrow)" == "01" ] && /path/to/backup_database.sh

这个任务在每个月的最后一天午夜之前(前四天内),如果明天是下个月的第一天,就执行数据库备份。

  1. 每天中午12点和午夜执行定时提醒
shell0 0,12 * * * /usr/bin/notify-send "提醒" "时间到了!"

这个任务在每天中午12点和午夜时弹出一个提醒消息。