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

相关推荐
晚风_END8 小时前
Linux|操作系统|elasticdump的二进制方式部署
运维·服务器·开发语言·数据库·jenkins·数据库开发·数据库架构
嵌入小生0078 小时前
Standard IO -- Continuation of Core Function Interfaces (Embedded Linux)
linux·vim·嵌入式·标准io·vscode
Zach_yuan8 小时前
传输层之TCP/UDP 核心原理全解析:从协议基础到实战机制
linux·网络协议·tcp/ip·udp
独自归家的兔8 小时前
Ubuntu 系统 systemd timers 详解:替代 crontab 的定时任务进阶方案
linux·运维·ubuntu
Lsir10110_8 小时前
【Linux】深入解剖页表——分页式存储
linux·运维·服务器
victory04318 小时前
服务器病毒处理记录
运维·服务器·chrome
爱吃生蚝的于勒8 小时前
【Linux】线程概念(一)
java·linux·运维·服务器·开发语言·数据结构·vim
风指引着方向8 小时前
昇腾 AI 开发生产力工具:CANN CLI 的高级使用与自动化脚本编写
运维·人工智能·自动化
fengyehongWorld8 小时前
Linux yq命令
linux·运维·服务器
weixin_404679318 小时前
docker部署ollama
运维·docker·容器