主题
at 一次性任务
除了 cron 的周期性任务,Linux 还提供 at 命令用于安排一次性任务,例如在指定时间运行备份或脚本,仅执行一次。
安装 at 工具
某些发行版默认未安装,需要手动安装:
bash
# Debian/Ubuntu
sudo apt install at
# CentOS/RHEL
sudo yum install at
# 启动 atd 服务(守护进程)
sudo systemctl enable --now atd使用 at 创建任务
基本语法:
bash
at TIME输入命令后按 Ctrl+D 提交任务,例如:
bash
at 14:30然后输入要执行的命令:
bash
/home/user/scripts/backup.sh按 Ctrl+D 结束输入。
支持的时间格式包括:
now + 10 minutesmidnighttomorrow 5pm2025-06-26 18:00
查看和管理 at 任务
查看待执行的 at 任务:
bashatq删除指定任务(任务 ID 可通过 atq 查看):
bashatrm <job_id>
使用文件创建任务
也可以通过输入文件创建任务:
bash
at now + 1 hour < /path/to/command-list.txt文件内容示例:
bash
echo "开始执行任务"
/usr/local/bin/myscript.sh使用注意
- at 的任务只执行一次,不适用于周期性任务。
- 和 cron 类似,at 任务的执行环境较简洁,建议使用完整路径。
- at 会将输出发送到当前用户邮箱(若系统配置了邮件服务)。
掌握 at 命令,能在无需周期调度时灵活安排一次性定时任务。
