【linux】进程与服务管理命令 - at

文章目录

        • [1. 基本用法](#1. 基本用法)
        • [2. 常用参数](#2. 常用参数)
        • [3. 用法举例](#3. 用法举例)
        • [4. 注意事项](#4. 注意事项)

at 命令用于在指定的时间运行一次性任务。与 cron 的定期调度不同, at 适合处理临时或单次的任务调度。

1. 基本用法
  • 语法:
bash 复制代码
at [选项] <时间>
  • 功能:

    • 按照指定时间运行一次性任务。
    • 管理待执行任务队列(查看、删除)。
    • 借助 atd 服务处理任务调度,需确保该服务正在运行。
  • 此命令是否系统自带:系统默认自带,无需额外安装。


2. 常用参数
  • -latq:列出当前用户的所有待执行任务。
  • -d <任务编号>atrm:删除指定的任务。
  • -c <任务编号>:显示指定任务的详细内容。
  • -m:任务完成后发送邮件通知用户(如果系统支持邮件功能)。
  • -f <文件>:从指定文件读取任务。
  • -v:显示任务的运行时间。

3. 用法举例
  • 在未来 5 分钟后执行一个命令:

    bash 复制代码
    echo "ls -l /tmp" | at now + 5 minutes
  • 指定日期和时间执行任务:

    bash 复制代码
    echo "echo 'Backup complete'" | at 14:00 2025-01-14
  • 查看当前用户的任务队列:

    bash 复制代码
    atq
  • 删除编号为 2 的任务:

    bash 复制代码
    atrm 2
  • 从文件中读取任务并调度:

    bash 复制代码
    at -f /path/to/script.sh 22:30
  • 显示编号为 3 的任务内容:

    bash 复制代码
    at -c 3

4. 注意事项
  • at 的调度时间可以用灵活的格式指定,例如 now + 1 hourmidnightnoon 等。

  • 任务运行时默认环境变量可能与用户当前环境不同,需确保必要的环境变量正确设置。

  • at 调度的任务会使用 /bin/sh 解释器执行,如果任务依赖其他解释器(如 bash),需显式指定。atd 服务必须启动才能执行任务,检查服务状态:

    bash 复制代码
    systemctl status atd
  • 默认情况下,/etc/at.allow/etc/at.deny 文件可用来限制用户使用 at 命令。

相关推荐
重生之绝世牛码20 小时前
Linux软件安装 —— zookeeper集群安装
大数据·linux·运维·服务器·zookeeper·软件安装
额12920 小时前
磁盘物理卷、卷组、逻辑卷管理
linux·运维·服务器
Maggie_ssss_supp20 小时前
Linux-正则表达式
linux·运维·正则表达式
是娇娇公主~20 小时前
C++集群聊天服务器(3)—— 项目数据库以及表的设计
服务器·数据库·c++
重生之绝世牛码20 小时前
Linux软件安装 —— kafka集群安装(SASL密码验证)
大数据·linux·运维·服务器·分布式·kafka·软件安装
努力的小帅20 小时前
Linux_多线程(Linux入门到精通)
linux·多线程·多进程·线程同步·线程互斥·生产消费者模型
晴天¥20 小时前
操作系统由MBR->GPT,导致系统黑屏是怎么回事?
linux
w***765520 小时前
临时文件自动化管理:高效安全新方案
运维·安全·自动化
Volunteer Technology21 小时前
Nginx部署静态项目
运维·服务器·nginx