当前位置: 首页 > news >正文

CentOS_计划任务之At


CentOS 8计划任务之At


目录

    • 1 常见的计划任务
    • 2 了解At
      • 2.1 At的使用
        • 2.2.1 At服务
        • 2.2.2 At名单
        • 2.2.3 At命令
    • 3 操作示例
      • 3.1 操作平台
      • 3.2 项目操作:使用At
        • 3.2.1 创建计划任务
        • 3.2.2 查询计划任务
        • 3.2.3 删除计划任务


1 常见的计划任务

在Linux系统中,常见的能实现定时任务的软件有at、cron和anacron。
其中,各个服务有其独特的点:

(1)	At:适合仅执行一次就结束的调度命令,需要在后台启动守护进程atd;
(2)	Cron:适合脚本、单句命令的调度,需要在后台启动守护进程Crond,并通过Crondtab命令实现;
(3)	Anacron:适合实现以天为周期,在关机状态下未执行的任务可在开机后继续执行。

有些计划任务是只需要执行一次就能完成的,这时候就需要使用到At服务啦;本文将着重介绍At服务。

2 了解At

2.1 At的使用

2.2.1 At服务

一般情况下At服务默认安装并开启。
如果系统没有安装,可以输入以下命令安装At服务

yum install -y at

常规的控制命令

systemctl start at  //启动At服务
systemctl stop at  //停止At服务
systemctl reload at  //重载At服务
systemctl restart at  //重启At服务

设置At服务开机自启

systemctl enable at

检查At是否已设置为开机自启

ntsysv  //用于设置系统的各种服务的软件

如果At服务已设为开机自启,则输入上述命令的情况,如图2-1所示。

在这里插入图片描述

图2-1 通过ntsysv查看At服务是否设为开机自启

2.2.2 At名单

为了提高安全性,可以通过修改At的名单文件,允许或限制特定用户使用At服务。涉及At的名单文件有两个,详情请见下表。

表2-1 At的白名单和黑名单对比

在这里插入图片描述

通过表格归纳,我们发现At的白名单要比黑名单优先;一般来说,建议保留一个名单即可(然而系统默认是保留黑名单,即 /etc/at.deny 文件)。

2.2.3 At命令

At命令的格式如下所示。

At [参数 -v|-q|-f|-l|-d|-m] [时间]

参数说明

表2-1 At命令参数

在这里插入图片描述
提示:使用 -f 参数的时候,最好指定的是绝对路径,以避免不必要的麻烦;同时At计划任务的默认目录为 /var/spool/at/ 中。
At命令支持多种时间参数(格式),详情请浏览下表。
At的时间参数

表2-2 At时间参数

在这里插入图片描述
💡提示:At的时间可以组合

3 操作示例

3.1 操作平台

本操作示例将以CentOS 8.2为模板,在X86-64平台上,使用VMware虚拟机,其主要参数如下表。

表3-1 虚拟机配置参数

在这里插入图片描述

3.2 项目操作:使用At

3.2.1 创建计划任务

在2021年6月16日下午4点16分执行命令 wall “hello”,如图3-1所示。

#at 16:16 06162021
at> wall “hello”

输入完成之后,按Ctrl键+D键保存并退出。
于此同时,如果时间还没到,At服务会反馈该计划任务的工作号(例如下图的1号),我们可以通过该工作号查询和删除该计划任务。
在这里插入图片描述

图3-1 创建计划任务

3.2.2 查询计划任务

查询章节3.2.1中创建的计划任务,如图3-2、3-3所示。

At -c 1 //这里的1视具体的工作号而定(默认从1开始)

输入完成后,我们能看到该任务的详细信息,如下图所示(节选);其中,在详细信息的最底部能看到待执行的计划任务的命令。
在这里插入图片描述

图3-2 查看创建的计划任务1详情(节选)

在这里插入图片描述

图3-3 查看创建的计划任务1详情(节选)

3.2.3 删除计划任务

删除章节3.2.2中创建的计划任务,如图3-4所示。

At -d 1 //这里的1视具体的工作号而定(默认从1开始)

输入完成后,并不会出现任何提示,此时再输入 at -c 1 会提示找不到该工作号了。
在这里插入图片描述

图3-4 删除该计划任务并再次查询

提示:你也可以在 /var/spool/at目录中删除该计划任务文件;删除了该文件,则对应的计划任务也将会被取消。

制作成员: 陈诺
排版: 郑伟钦
初审: 杨佳佳
复审: 二月二
在这里插入图片描述


点击下方“正月十六工作室”查看更多学习资源

正月十六工作室

相关文章:

  • kubernetes 节点操作
  • Pytorch使用permute后再reshape会修改张量的值,维度虽然对齐但仍需小心
  • 排序及其代码详解~
  • 欧拉公式的三种证明方法:导数、幂级数、极坐标
  • MQ消息的自动应答和手动应答| RabbitMQ系列(三)
  • 【C++初阶】C++入门(一)
  • 【面试题总结】分布式锦集
  • PostgreSQL执行计划获取与修改
  • 大幅提升CLIP图像分类准确率-Tip-Adapter
  • CCF- CSP历年认证考试题目链接+题解总结(持续更新)
  • 泛型、IO流 和 网络编程
  • 这些Java基础知识,诸佬们都还记得嘛(学习,复习,面试都可)
  • SSM《程序设计基础》课程答疑系统的设计与实现 毕业设计-附源码261620
  • R语言使用order函数按照两个数据列的值排序data.table数据(主变量升序排序、次变量降序排序)
  • Java Web 2 数据库 2.1 数据库相关概念 2.2 常见的关系型数据库管理系统 2.3 MySQL 数据库
  • 「面试题」如何实现一个圣杯布局?
  • 【407天】跃迁之路——程序员高效学习方法论探索系列(实验阶段164-2018.03.19)...
  • 230. Kth Smallest Element in a BST
  • js操作时间(持续更新)
  • node和express搭建代理服务器(源码)
  • Python学习笔记 字符串拼接
  • 产品三维模型在线预览
  • 基于Mobx的多页面小程序的全局共享状态管理实践
  • 面试题:给你个id,去拿到name,多叉树遍历
  • 首页查询功能的一次实现过程
  • 推荐一个React的管理后台框架
  • 小试R空间处理新库sf
  • 赢得Docker挑战最佳实践
  • ​TypeScript都不会用,也敢说会前端?
  • #我与Java虚拟机的故事#连载04:一本让自己没面子的书
  • (附源码)springboot炼糖厂地磅全自动控制系统 毕业设计 341357
  • (附源码)springboot人体健康检测微信小程序 毕业设计 012142
  • (附源码)ssm高校志愿者服务系统 毕业设计 011648
  • (附源码)ssm捐赠救助系统 毕业设计 060945
  • (附源码)计算机毕业设计SSM基于健身房管理系统
  • (含react-draggable库以及相关BUG如何解决)固定在左上方某盒子内(如按钮)添加可拖动功能,使用react hook语法实现
  • (原創) 人會胖會瘦,都是自我要求的結果 (日記)
  • .net 4.0 A potentially dangerous Request.Form value was detected from the client 的解决方案
  • .NET 6 Mysql Canal (CDC 增量同步,捕获变更数据) 案例版
  • .net 开发怎么实现前后端分离_前后端分离:分离式开发和一体式发布
  • .NET分布式缓存Memcached从入门到实战
  • .NET开发者必备的11款免费工具
  • .NET是什么
  • /3GB和/USERVA开关
  • @RequestMapping 的作用是什么?
  • [ 云计算 | AWS ] 对比分析:Amazon SNS 与 SQS 消息服务的异同与选择
  • [BUUCTF]-Reverse:reverse3解析
  • [BZOJ1053][HAOI2007]反素数ant
  • [C++随笔录] 红黑树
  • [CISCN2019 华北赛区 Day1 Web2]ikun
  • [EFI]Lenovo ThinkPad X280电脑 Hackintosh 黑苹果引导文件
  • [iOS]让Xcode 4.2生成的app支持老的iOS设备(armv6)
  • [JavaScript]_[初级]_[关于forin或for...in循环语句的用法]
  • [jQuery]div滚动条回到最底部
  • [LeetCode][面试算法]逻辑闭环的二分查找代码思路