linux的定时任务详解

cron定时任务常用命令

crontab 
# -l: 查看定时任务列表
# -e: 编辑定时任务列表
# -u: 指定使用的用户执行任务

cron定时任务的相关配置文件

/etc/cron.deny: 该文件中所列用户不允许使用crontab命令,不常用
/etc/cron.allow: 该文件中所列用户允许使用crontab命令,优先于/etc/cron.deny
/var/spool/vron: 所有用户的cron配置文件都存放在此目录,以用户名字命名的文件,文件里就是定时任务的指令,以root用户为例,执行crontal -e 就等同于执行vim /var/spool/vron/root
/var/log/cron: 定时任务的日志地址

cron表达式的语法规则

*  *  *  *  *
分 时 日 月  周

注意

  1. 定时任务后面执行的命令不能有百分号,如果非要有就要转义 \
  2. 定时任务尽量用脚本(命令放到文件里)。脚本结尾加.sh
  3. /bin/sh 脚本全路径
  4. 执行脚本加 &> /dev/null或者 >/dev/null 2>&1
  5. 有软链接的文件要写源文件

实践

# 让服务器时间每5分钟和互联网时间做一次同步
crontab -l
*/5 * * * * /usr/sbin/ntpdate ntp1.aliyun.com >/dev/null 2>&1

# 每天晚上00点10分,执行脚本
crontab -l
10 00 * * *  /bin/bash /server/scripts/tar.sh  &> /dev/null
posted @ 2025-08-13 00:07  阿峰博客站  阅读(24)  评论(0)    收藏  举报