[命令] Linux 命令 at (延迟执行某个命令)

正文:

步骤一:安装 at 命令

# dnf install at

步骤二:启动 atd 进程

# systemctl enable --now atd

步骤三:通过 at 命令设置延迟执行命令

3.1 设置执行的时间并进入 at 模式

# at now +3 minutes
warning: commands will be executed using /bin/sh


补充:这里的 now +3 minutes 代表当前时间 3 分钟后执行。
所有可选的时间选项如下:
1) now +3 minutes,3 分钟后执行
2) now +3 hours,3 小时后执行
3) now +3 days,3 天后执行
4) 15:30,当天 15:30 时执行
5) 15:30 2025-01-01,2025 年 1 月 1 日时执行
6) teatime,当天 16:00 执行
7) midnight 次日凌晨 00:00 执行

3.2 设置执行的命令

at> reboot

(补充:这里以执行 reboot 命令为例)

3.3 退出 at 模式

at> <CtrlD> + <D>

at> <EOT>
job 5 at Tue Sep 16 22:37:00 2025
#

步骤四:查看 at 设置的要执行的命令

4.1 显示 at 所有设置的列表

# at -l
6	Tue Sep 16 22:37:00 2025 a root

4.2 显示某条 at 命令的设置

# at -c 6

(补充:这里以显示第 6 条 at 命令为例,这里的 6 是步骤 4.1 的输出结果)

补充:在脚本中使用 at 命令的方法

# vim test.sh

创建以下内容:

#!/bin/bash
at now + 1min << EOF

reboot

EOF

(补充:这里以创建名为 test.sh 在 1 分钟后重启系统为例)