crontab

-l list
-e 编辑

格式

*
/ 每隔
- 几到几
分别

注意事项

  • 任务一定要写注释
  • 会在屏幕输出内容的一定要 &>>到相关文件或/dev/null,否则会一直给root发邮件或变成小文件
  • 导入环境变量 export PATH=巴拉巴拉,或者. /etc/profile
  • 定时任务路径 /var/spool/cron

定时任务案例

  1. # 系统巡检
  2. cat >xunjian.sh<<EOF
  3. . /etc/profile
  4. ip a s eth0 | awk -F'inet |/18' 'NR==3{print $2}' # ip
  5. hostname # 主机名
  6. w | awk -F'ge: ' 'NR==1{print $2}' # 负载均衡信息
  7. free -h | awk 'NR==2{print $2,$3,$7}' # 内存信息
  8. lscpu | grep 'CPU(s):'| awk -F': +' 'NR==1{print $2}' # cpu核心数
  9. df -h | grep '/dev/vda1'| awk -F' +' '{print $3,$4}' # 磁盘信息
  10. top -bn1 | awk -F', +|Tasks:' 'NR==2{print $1,$2,$4,$5}' # 进程信息
  11. EOF
  12. crontab -e
  13. 00 * * * * sh /sh/xunjian.sh &>>/tmp/sys.log
  14. # 定时备份etc
  15. 00 00 * * * tar zcf /backup/etc-`date +%F`.tar.gz /etc &>>/dev/null
  16. # 校准时间
  17. */2 * * * * /sbin/ntpdate ntp1.aliyun.com