【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 命令。

相关推荐
SPC的存折4 分钟前
1、MySQL数据库基础
linux·运维·数据库·mysql
无忧.芙桃10 分钟前
进程之环境变量
linux·运维·服务器
Wanliang Li12 分钟前
Linux驱动——input子系统
linux·驱动开发·input
feng_you_ying_li14 分钟前
liunx之make/makefile的使用
linux
默|笙31 分钟前
【Linux】线程概念与控制(4)_线程封装
linux
仍然探索未知中37 分钟前
【Linux内核源码分析】内核数据结构
linux·数据结构
chxii39 分钟前
linux 下用 acme.sh 搞定 Nginx 免费 SSL 证书自动续期(下) 对于acme.sh命令安装详解
linux·运维·服务器
Bert.Cai1 小时前
Linux more命令详解
linux·运维
minji...1 小时前
Linux 多线程(四)线程等待,线程分离,线程管理,C++多线程,pthread库
linux·运维·开发语言·网络·c++·算法
麦德泽特1 小时前
基于 Go 语言的 Modbus 项目实战:构建高性能、可扩展的工业通信服务器
服务器·开发语言·golang·modbus·rtu