Linux计划任务

crontab

# 选项
-e         # 编辑计划任务
-l         # 查看计划任务
-u         # 给其他用户设置计划任务
-r         # 清空计划任务

image

格式:
分 时 日 月 周 绝对路径执行命令
分钟 (0 - 59)
小时 (0 - 23)
一个月中的第几天 (1 - 31)
月份 (1 - 12)
星期中星期几 (0 - 6) (星期天 为0)

,         # 表示多个具体的时间
-         # 表示一个时间范围
/         # 表示频率
*         # 表示所有

示例

* * * * * /bin/ls				# 每一分钟执行一次 /bin/ls
0 6-12/3 * 12 * /usr/bin/backup			# 在12月内, 每天的早上6点到12点,每隔3个小时0分钟执行一次 /usr/bin/backup
*/5 * * * * /home/bruce/backup			# 每间隔5分钟执行 /home/bruce/backup这个文件
20 0-23/2 * * * echo "haha"			# 每天0点20分开始间隔2小时, 2点20 分, 4点20 分....执行 echo "haha"
0 */2 * * * /sbin/service httpd restart		# 每两个小时重启一次apache
50 7 * * * /sbin/service sshd start		# 每天7:50开启ssh服务
50 22 * * * /sbin/service sshd stop		# 每天22:50关闭ssh服务
0 0 1,15 * * fsck /home				# 每月1号和15号检查/home 磁盘
00 03 * * 1-5 find /home "*.xxx" -mtime +4 -exec rm {} \;	# 每周一至周五3点钟,在目录/home中,查找文件名为*.xxx的文件,并删除4天前的文件
30 6 */10 * * ls				# 每月的1、11、21、31日是的6:30执行一次ls命令
0 5,17 * * * /scripts/script.sh			# 每天 5:00和17:00执行任务

注意1

当程序在你所指定的时间执行后,系统会发一封邮件给当前的用户,显示该程序执行的内容,
若是不希望收到这样的邮件,在每一行空一格之后加上> /dev/null 2>&1即可

注意2

新创建的 cron 任务,不会马上执行,至少要过 2 分钟后才可以,当然可以重启 cron 来马上执行
systemctl restart crond

计划任务的日志文件

/var/log/cron

posted @ 2022-12-28 12:06  待满茶杯  阅读(100)  评论(0编辑  收藏  举报