at
命令在 Linux 系统中用于调度一次性任务
-m
:当作业完成后,向用户发送邮件通知。-n
:指定作业完成后的退出状态码。默认情况下,如果作业成功完成,退出状态码为 0;如果作业失败,退出状态码为非零值。-q
:指定作业队列。可选值为 al
(默认值)、q
、bc
、cf
、fl
、gi
、lh
、mq
、nc
、or
、ql
、qj
、qr
、qx
和 tq
。这些值分别表示不同的队列优先级。-s
:指定作业执行的 shell。例如,-s /bin/bash
表示使用 bash shell 执行作业。-S
:指定作业执行的登录 shell。例如,-S /bin/bash
表示使用 bash shell 作为登录 shell 执行作业。-u
:以特定用户身份执行作业。例如,-u username
表示以 username 用户身份执行作业。-x
:在执行作业之前,显示命令行。-y
:自动回答所有提示为“yes”。-z
:使用 bzip2
压缩命令输出的内容。这些参数可以组合使用,以满足不同的调度需求。例如,以下命令将在 5 分钟后执行名为 script.sh
的脚本,并在作业完成后向用户发送邮件通知:
at now + 5 minutes -m -s /bin/bash script.sh