linux的at命令的詳細(xì)解釋
linux下at命令的主要作用是計(jì)劃任務(wù)執(zhí)行,下面由學(xué)習(xí)啦小編整理了linux的at命令的詳細(xì)解釋,希望對(duì)你有幫助。
linux的at命令的詳細(xì)解釋
1.命令格式:
at[參數(shù)][時(shí)間]
2.命令功能:
在一個(gè)指定的時(shí)間執(zhí)行一個(gè)指定任務(wù),只能執(zhí)行一次,且需要開啟atd進(jìn)程(ps -ef | grep atd查看, 開啟用/etc/init.d/atd start or restart; 開機(jī)即啟動(dòng)則需要運(yùn)行 chkconfig --level 2345 atd on)。
3.命令參數(shù):
-m 當(dāng)指定的任務(wù)被完成之后,將給用戶發(fā)送郵件,即使沒有標(biāo)準(zhǔn)輸出
-I atq的別名
-d atrm的別名
-v 顯示任務(wù)將被執(zhí)行的時(shí)間
-c 打印任務(wù)的內(nèi)容到標(biāo)準(zhǔn)輸出
-V 顯示版本信息
-q<列隊(duì)> 使用指定的列隊(duì)
-f<文件> 從指定文件讀入任務(wù)而不是從標(biāo)準(zhǔn)輸入讀入
-t<時(shí)間參數(shù)> 以時(shí)間參數(shù)的形式提交要運(yùn)行的任務(wù)
at允許使用一套相當(dāng)復(fù)雜的指定時(shí)間的方法。能夠接受在當(dāng)天的hh:mm(小時(shí):分鐘)式的時(shí)間指定。假如該時(shí)間已過去,那么就放在第二天執(zhí)行。當(dāng)然也能夠使用midnight(深夜),noon(中午),teatime(飲茶時(shí)間,一般是下午4點(diǎn))等比較模糊的 詞語來指定時(shí)間。用戶還能夠采用12小時(shí)計(jì)時(shí)制,即在時(shí)間后面加上AM(上午)或PM(下午)來說明是上午還是下午。 也能夠指定命令執(zhí)行的具體日期,指定格式為month day(月 日)或mm/dd/yy(月/日/年)或dd.mm.yy(日.月.年)。指定的日期必須跟在指定時(shí)間的后面。 上面介紹的都是絕對(duì)計(jì)時(shí)法,其實(shí)還能夠使用相對(duì)計(jì)時(shí)法,這對(duì)于安排不久就要執(zhí)行的命令是很有好處的。指定格式為:now + count time-units ,now就是當(dāng)前時(shí)間,time-units是時(shí)間單位,這里能夠是minutes(分鐘)、hours(小時(shí))、days(天)、weeks(星期)。count是時(shí)間的數(shù)量,究竟是幾天,還是幾小時(shí),等等。 更有一種計(jì)時(shí)方法就是直接使用today(今天)、tomorrow(明天)來指定完成命令的時(shí)間。
TIME:時(shí)間格式,這里可以定義出什么時(shí)候要進(jìn)行 at 這項(xiàng)任務(wù)的時(shí)間,格式有:
HH:MM
ex> 04:00
在今日的 HH:MM 時(shí)刻進(jìn)行,若該時(shí)刻已超過,則明天的 HH:MM 進(jìn)行此任務(wù)。
HH:MM YYYY-MM-DD
ex> 04:00 2009-03-17
強(qiáng)制規(guī)定在某年某月的某一天的特殊時(shí)刻進(jìn)行該項(xiàng)任務(wù)
HH:MM[am|pm] [Month] [Date]
ex> 04pm March 17
也是一樣,強(qiáng)制在某年某月某日的某時(shí)刻進(jìn)行該項(xiàng)任務(wù)
HH:MM[am|pm] + number [minutes|hours|days|weeks]
ex> now + 5 minutes
ex> 04pm + 3 days
就是說,在某個(gè)時(shí)間點(diǎn)再加幾個(gè)時(shí)間后才進(jìn)行該項(xiàng)任務(wù)。
linux的at命令詳解的使用實(shí)例
實(shí)例1:三天后的下午 5 點(diǎn)執(zhí)行 /bin/ls
命令:
at 5pm+3 days
輸出:
[root@localhost ~]# at 5pm+3 days
at> /bin/ls
at> <EOT> 按Ctrl+D
job 7 at 2013-01-08 17:00
[root@localhost ~]#
實(shí)例2:明天17點(diǎn)鐘,輸出時(shí)間到指定文件內(nèi)
命令:
at 17:20 tomorrow
輸出:
[root@localhost ~]# at 17:20 tomorrow
at> date >/root/2013.log
at> <EOT> 按Ctrl+D
job 8 at 2013-01-06 17:20
[root@localhost ~]#
實(shí)例3:計(jì)劃任務(wù)設(shè)定后,在沒有執(zhí)行之前我們可以用atq命令來查看系統(tǒng)沒有執(zhí)行工作任務(wù)
命令:
atq
輸出:
[root@localhost ~]# atq
8 2013-01-06 17:20 a root
7 2013-01-08 17:00 a root
[root@localhost ~]#
實(shí)例4:刪除已經(jīng)設(shè)置的任務(wù)
命令:
atrm 7
輸出:
[root@localhost ~]# atq
8 2013-01-06 17:20 a root
7 2013-01-08 17:00 a root
[root@localhost ~]# atrm 7
[root@localhost ~]# atq
8 2013-01-06 17:20 a root
[root@localhost ~]#
實(shí)例5:顯示已經(jīng)設(shè)置的任務(wù)內(nèi)容
命令:
at -c 8
輸出:
[root@localhost ~]# at -c 8
#!/bin/sh
# atrun uid=0 gid=0
# mail root 0
umask 22此處省略n個(gè)字符
date >/root/2013.log
[root@localhost ~]#