本文主要講解一次性計畫任務的命令at的用法!
在指定的時間執行乙個任務,只能執行一次
程序名為atd,首先需要確認該程序是否啟動,並且配置開機自啟動
ps -ef | grepatd/etc/init.d/atd start
chkconfig atd on
chkconfig --list atd
at [引數] [時間]
2.1.1.命令列直接配置,注意時間格式
進入編輯任務模式,編輯完成ctrl+d儲存退出
at 12:032018-05-15
at -t 201805161203
例項1:
[root@zstest1 ~]# at 12:032018-05-15
at> echo
"hehe
" >/tmp/20180409
.txt
at> job
1 at 2018-05-15
12:03
例項2:
[root@zstest1 ~]# at -t 201805161203at> echo
"haha
" >/tmp/20180409-02
.txt
at> job 2 at 2018-05-16
12:03
2.1.2.從指定檔案讀入任務而不是從標準輸入讀入
at -f 《檔案》
例項:
[root@zstest1 ~]# vim at.txtecho
'haha20180409-03
'>/tmp/20180409-03
.txt
[root@zstest1 ~]# at -f at.txt -t 201805261205
job
4 at 2018-05-26
12:05
注意:建立完的定時任務儲存在/var/spool/at/目錄下,以」a0000***「等命名
[root@zstest1 ~]# ll /var/spool/at/
總用量 20
-rwx------ 1 root root 2718 4月 9 18:08 a0000101838373
-rwx------ 1 root root 2703 4月 9 18:17 a00002018e461c
-rwx------ 1 root root 2704 4月 9 18:17 a00003018431d3
atqat -l
例項:兩個命令顯示完全相同
[root@zstest1 ~]# atq12018-05-15
12:03
a root
22018-05-16
12:03
a root
32018-05-26
12:05 a root
atrm 任務編號at -d 任務編號
at -c 任務編號
例項:
[root@zstest1 ~]# at -c 3# 檢查任務配置情況
......省略
module=\(\)\ ; export module
cd /root ||
$ << '
marcindelimiter36791344
'echo
'haha20180409-03
'>/tmp/20180409-03
.txt
marcindelimiter36791344
at -v
at -m
1)能夠接受在當天的hh:mm(小時:分鐘)式的時間指定。假如該時間已過去,那麼就放在第二天執行。
2)能夠使用midnight(深夜),noon(中午),teatime(飲茶時間,一般是下午4點)等比較模糊的詞語來指定時間。
3)能夠使用12小時計時制,在時間後面加上am(上午)或pm(下午)來說明是上午還是下午。
4)能夠指定命令執行的具體日期,指定格式為month day(月 日)或mm/dd/yy(月/日/年)或dd.mm.yy(日.月.年)。指定的日期必須跟在指定時間的後面。
5)直接使用today(今天)、tomorrow(明天)來指定完成命令的時間。
指定格式為:「具體時間 + 數量 時間單位」
具體時間可以是now或者其他指定的時間
時間單位,可以是minutes(分鐘)、hours(小時)、days(天)、weeks(星期)。
1)具體時間執行任務:
at 04:00# 今天 4點(預設為24小時制)
at 0400
at 17:20 tomorrow
2)具體日期的具體時間hh:mm yyyy-mm-dd,必須先寫時間,後寫日期
at 12:032018-05-15
at 04pm june
172018
3)指定在多久以後執行任務:hh:mm[am|pm] + num [minutes|hours|days|weeks]
now + 5minutes
04pm + 3 days
at定時任務預設只有root使用者可以使用
對於某些特殊需求可以使用 /etc/at.allow 與 /etc/at.deny 這兩個檔案來進行 at 的使用限制:
加上這兩個檔案後, at 的工作情況是這樣的:
1)先找尋 /etc/at.allow 這個檔案,寫在這個檔案中的使用者才能使用 at ,沒有在這個檔案中的使用者則不能使用 at (即使沒有寫在 at.deny 當中);
2)如果 /etc/at.allow 不存在,就尋找 /etc/at.deny 這個檔案,若寫在這個 at.deny 的使用者則不能使用 at ,而沒有在這個 at.deny 檔案中的使用者,就可以使用 at 命令了。
3)如果兩個檔案都不存在,那麼只有 root 可以使用 at 這個命令。
由以內容可知 /etc/at.allow 是管理較為嚴格的方式,而 /etc/at.deny 則較為鬆散 (因為帳號沒有在該檔案中,就能夠執行 at 了)。
在一般的 distributions 當中,由於假設系統上的所有使用者都是可信任的, 因此系統通常會保留乙個空的 /etc/at.deny 檔案,允許所有人使用 at 命令
如果不希望有某些使用者使用 at 的話,將那個使用者的帳號寫入 /etc/at.deny 即可! 乙個帳號寫一行。
完畢,呵呵呵呵
Linux定時任務命令
檢視伺服器是否安裝crontab rpm qa grep crontab 安裝crontab yum y install vixie cron yum y install crontabs 檢視當前使用者下定時任務 crontab l 編輯定時任務 crontab e 當前使用者定時任務目錄 檔名為...
linux定時任務 at定時任務
at命令是一次性定時計畫任務,at的守護程序atd會以後臺模式執行,檢查作業佇列來執行作業。atd守護程序會檢查系統上的乙個特殊目錄來獲取at命令的提交的作業,預設情況下,atd守護程序每60秒檢查一次目錄,有作業時,會檢查作業執行時間,如果時間與當前時間匹配,則執行此作業。注意 at命令是一次性定...
linux定時任務命令 crontab
為當前使用者建立cron服務 1.鍵入 crontab e 編輯crontab服務檔案 例如 檔案內容如下 2 bin sh home admin jiaoben buy deletefile.sh 儲存檔案並並退出 2 bin sh home admin jiaoben buy deletefil...