查看已安排的at任务队列
使用atq命令(或at -l)可列出当前用户的所有待执行任务:
atq
输出示例:
5 2025-10-20 15:00 a user1
10 2025-10-21 09:00 b root
- 字段说明:
- 第一列:任务编号(如
5,10) - 第二列:执行时间
- 第三列:队列标识(
a、b等,默认a) - 第四列:任务所属用户
- 第一列:任务编号(如
权限说明:
- 普通用户仅能查看自己的任务。
- root用户可查看所有任务:
sudo atq # 或 sudo at -l
查看具体at任务的详细内容
通过任务编号查看任务详情(如查看编号5的任务):
at -c 5
- 显示任务的环境变量、工作目录及具体执行的命令(如
/bin/sh脚本)。 - 关键提示:输出可能较长,建议结合
grep过滤命令内容:at -c 5 | grep -A 5 "will execute" # 查看命令部分
查看at命令的帮助文档
快速帮助(基础选项):
at -h # 或 at --help
输出示例:
Usage: at [-V] [-q queue] [-f file] [-mldbv] TIME
at -c job [job...]
atq [-V] [-q queue]
atrm [-V] job [job...]
完整手册(详细说明):
man at ```包含: - 命令语法、时间格式(如`now + 2 hours`) - 队列管理、权限控制(`/etc/at.allow`和`/etc/at.deny`) - 退出方法:按`q`键退出手册。 --- ### **四、检查`at`服务(atd)状态** `at`任务依赖`atd`守护进程,需确保其运行: ```bash systemctl status atd
关键状态说明:
active (running):服务正常。inactive (dead):需启动服务:sudo systemctl start atd
注意事项
- 权限控制:
- 系统通过
/etc/at.allow和/etc/at.deny文件管理用户权限。 - 若
at.allow存在,仅列出的用户可使用at。
- 系统通过
- 任务删除:
误操作的任务可通过atrm删除:atrm 5 # 删除编号为5的任务
- 时间格式:
支持灵活格式(如15:30 2025-10-20、now + 1 day)。
- 查看任务队列 →
atq - 查看任务详情 →
at -c <任务号> - 学习命令用法 →
man at - 验证服务状态 →
systemctl status atd
定期检查at任务可避免未执行的计划操作堆积,提升系统管理效率。
引用说明基于Linux man-pages项目(v5.10)及SysVinit工具集官方文档,遵循Linux标准基础(LSB)规范,实践环境为Ubuntu 22.04/CentOS 9,不同发行版命令可能略有差异。
原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/6595.html