Linux系统下的延迟及定时任务

1. 延迟任务

1.1 发起延迟任务

命令 作用
at + <时间> + 回车 + <命令> +回车+【Ctrl+d】 发起延迟任务
at -l 查看任务队列
at -c <任务号> 查看任务内容
at -r <任务号> 取消任务

示例:
在这里插入图片描述

1.2 有输出的延迟任务

当延迟任务有输出,输出会以邮件形式发送到任务发起者邮箱中
1.安装 mailx postfix
在这里插入图片描述
2.重启 postfix 服务
在这里插入图片描述
3.对邮箱的管理
①:发送邮件, mail <用户名>
在这里插入图片描述
②:查看root用户的邮件
在这里插入图片描述
③:清空root邮件
在这里插入图片描述
测试:
1.发起有输出的延迟任务
在这里插入图片描述
2.在邮箱中查看任务的输出
在这里插入图片描述

1.3 at 命令的控制

  • /etc/at.deny #at黑名单,此名单中的人不能执行at
  • /etc/at.allow
  • 此文件默认不存在
  • 当此文件存在,/etc/at.deny不生效,系统中普通用户默认不能执行at,只有名单中的人可以

2. 定时任务

2.1 定时任务的管理

  • crond : 定期重复任务的服务
  • 任务储存位置:/var/spool/cron/root
  • 命令设定方式
命令 作用
crontab -u root -e 用户级别设定任务
crontab -u root -l 查看任务
crontab -u root -r 删除任务

示例:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
定时任务的其他写法:
在这里插入图片描述

2.2 配置文件方式设定

  • 系统级别cron ,只有超级用户可以操作
  • 系统级别cron设定文件存放路径: /etc/cron.d
  • 系统级别cron任务文件
文件 解释
/etc/cron.daily / 每天任务
/etc/cron.hourly/ 每小时任务
/etc/cron.monthly/ 每月任务
etc/cron.weekly/ 每周执行任务
/etc/cron.deny cron用户黑名单
/etc/cron.allow cron白名单,默认不存在,存在时:/etc/cron.deny失效,只有名单中的人可以执行cron

示例:
1.在/etc/cron.d目录下编写cron文件
在这里插入图片描述
在这里插入图片描述
2.查看邮件,定时任务已被执行
在这里插入图片描述

发布了23 篇原创文章 · 获赞 25 · 访问量 1万+

猜你喜欢

转载自blog.csdn.net/qq_42006358/article/details/104463251