at命令是一次性定时计划任务,at的守护进程atd会以后台模式运行,检查作业队列来运行作业。atd守护进程会检查系统上的一个特殊目录来获取at命令的提交的作业,默认情况下,atd守护进程每60秒检查一次目录,有作业时,会检查作业运行时间,如果时间与当前时间匹配,则运行此作业。
at命令的使用
at
命令格式:at [-f filename] time
,-f
参数用来指定shell脚本名,time
用来指定运行时间。
# 立即运行test13.sh脚本
# at命令会显示分配给作业的id和运行时间
$ at -f test13.sh now
job 1 at Sat Dec 17 23:26:09 2016
# atq命令可以查看系统中的等待作业
$ atq
1 Sat Dec 17 23:26:00 2016
2 Sat Dec 17 23:31:00 2016
3 Sat Dec 17 23:32:00 2016
# atrm命令可以删除系统中的等待作业,后面加上要删除的作业id
$ atrm 1
$ atq
2 Sat Dec 17 23:31:00 2016
3 Sat Dec 17 23:32:00 2016
4 Sat Dec 17 23:36:00 2016
5 Sat Dec 17 23:37:00 2016
at的执行时间设置
-
能够接受标准小时时间,hh:mm(小时:分钟)式的时间指定。假如该时间已过去,那么就放在第二天执行。例如,13:12。 -
特定可命名时间,例如now,noon,teatime(一般是下午4点)等比较模糊的词语来指定时间。 -
AM/PM指示符,采用12小时计时制,例如 10:10 AM。 -
标准日期格式,MMDDYY,MM/DD/YY等,例如12/31/16。 -
时间增量,例如now+25 min,10:17+7天。 -
可以使用today、tomorrow来指定时间。
注意事项
Mac的at命令默认的美国时间,重新加载com.apple.atrun.plist,终端操作:
sudo launchctl unload -F /System/Library/LaunchDaemons/com.apple.atrun.plist
sudo launchctl load -F /System/Library/LaunchDaemons/com.apple.atrun.plist
以上就是良许教程网为各位朋友分享的Linu系统相关内容。想要了解更多Linux相关知识记得关注公众号“良许Linux”,或扫描下方二维码进行关注,更多干货等着你 !