at作业(Webmin称之为预定命令)类似Scheduled Cron Jobs,但不是按调度重复地执行,而是仅在指定的日期和时间运行一次。不同于Cron作业,可以配置它们在指定目录而不是在用户的家目录中执行。预定的命令也跟踪在创建时设置的环境变量,并且在它运行时使得它们对这条命令可用。
通常at命令用于创建At作业,atq命令列出它们以及atrm命令移除它们。在Linux上,目录/var/spool/at用于存储作业,每个文件一个作业。在后台一直运行的守护进程atd检查这些文件并且在合适时间运行它们。在运行一个作业后,由于不再需要它,所以自动删除它。
用于创建和删除At作业的Webmin模块被称为Scheduled Commands,并且可以在Un-used Moudles类别下可以找到它。当你输入它时,主页将显示一个正在等待被运行的命令(假设存在)的列表,以及一个用于添加新命令的表单。以下图片显示了一个示例。

通过点击在主页上显示的任何命令的Job ID能够更加详细地查看它。这将显示一个页面,它显示了在这条命令执行时将被运行地所有完整shell脚本,包括所有环境变量。对于这页,通过点击*Cancel this command*按钮,你可以在它获取运行的机会前取消这个命令。

通过以下步骤能够创建在特定时间并且以你选择的用户执行的一条新命令:
1) 在这个模块主页上,在*New scheduled command*表单中,输入你想要这条命令以哪个用户名运行的用户名到*Run as user*字段。
2) 用运行这条命令所在的日期和时间填写*Run on date*和*Run at time*字段。
3) 设置*Run in directory*字段为你想要这条命令运行所在的任何目录。
4) 在*Commands to execute*文本框中,输入你想要一样多的shell命令,每条命令一行。
5) 当完成时,点击Create按钮。这页将被刷新并且你的新命令将在这页顶部的列表中出现。
6) 点击本页底部*Start scheduled Commands Server*启动运行预定命令的atd后台服务器进程。这是在命令指定时间执行命令所需的。
7) 如果需要在命令执行前取消命令,则点击本页底部的*Stop scheduled Commands Server*取消预定命令的执行。

从在Webmin内创建的预定命令将使用由Webmin设置的环境变量,它们会不同于在shell提示中由其所有者创建命令设置的变量。