linux的at命令
linux的at命令
linux下使用at命令允許linux系統(tǒng)運(yùn)行腳本。下面由學(xué)習(xí)啦小編為大家整理了linux的at命令的相關(guān)知識,希望大家喜歡!
一、linux的at命令詳解
1. at命令介紹
當(dāng)使用shell腳本時,你可能想在某個特定的時間運(yùn)行shell腳本,Linux系統(tǒng)中提供了多個在特定時間運(yùn)行shell腳本的方法,其中一種方法就是使用at命令。
at命令允許指定linux系統(tǒng)何時運(yùn)行腳本,at命令會將作業(yè)提交到隊列中,指定shell何時運(yùn)行該作業(yè)。at的守護(hù)進(jìn)程atd會以后臺模式運(yùn)行,檢查作業(yè)隊列來運(yùn)行作業(yè)。atd守護(hù)進(jìn)程會檢查系統(tǒng)上的一個特殊目錄來獲取at命令的提交的作業(yè)。默認(rèn)情況下,atd守護(hù)進(jìn)程每60秒檢查一次目錄。有作業(yè)時,會檢查作業(yè)運(yùn)行時間,如果時間與當(dāng)前時間匹配,則運(yùn)行此作業(yè)。
2. at命令的使用
at命令格式:at [-f filename] time,-f參數(shù)用來指定shell腳本名,time用來指定運(yùn)行時間。
# 立即運(yùn)行test13.sh腳本
# at命令會顯示分配給作業(yè)的id和運(yùn)行時間
$ at -f test13.sh now
job 1 at Sat Dec 17 23:26:09 2016
# atq命令可以查看系統(tǒng)中的等待作業(yè)
$ 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命令可以刪除系統(tǒng)中的等待作業(yè),后面加上要刪除的作業(yè)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 20161234567891011121314151617181912345678910111213141516171819
3. at的執(zhí)行時間設(shè)置
能夠接受標(biāo)準(zhǔn)小時時間,hh:mm(小時:分鐘)式的時間指定。假如該時間已過去,那么就放在第二天執(zhí)行。例如,13:12。
特定可命名時間,例如now,noon,teatime(一般是下午4點)等比較模糊的詞語來指定時間。
AM/PM指示符,采用12小時計時制,例如 10:10 AM。
標(biāo)準(zhǔn)日期格式,MMDDYY,MM/DD/YY等,例如12/31/16。
時間增量,例如now+25 min,10:17+7天。
可以使用today、tomorrow來指定時間。
二、注意事項
Mac的at命令默認(rèn)的美國時間,重新加載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.plist1212