中文字幕精品亚洲无线码二区,国产黄a三级三级三级看三级,亚洲七七久久桃花影院,丰满少妇被猛烈进入,国产小视频在线观看网站

每天一個linux命(ming)令(49):at命(ming)令

在windows系(xi)統(tong)中,windows提供了計劃任務(wu)這一功能,在控制面板 -> 性能與維(wei)護 -> 任務(wu)計劃, 它(ta)的(de)功能就是安排自動運(yun)行的(de)任務(wu)。 通過'添加任務(wu)計劃'的(de)一步步引導,則可建(jian)立一個定時執(zhi)行的(de)任務(wu)。

在(zai)linux系(xi)統中你(ni)可能(neng)已經發現了(le)為(wei)什么系(xi)統常常會自動的(de)(de)進行(xing)一(yi)些(xie)任(ren)(ren)務(wu)?這(zhe)些(xie)任(ren)(ren)務(wu)到底是(shi)誰(shui)在(zai)支配(pei)他們工(gong)(gong)作(zuo)的(de)(de)?在(zai)linux系(xi)統如(ru)(ru)果(guo)你(ni)想(xiang)要讓自己設(she)計的(de)(de)備(bei)份程序(xu)可以(yi)自動在(zai)某(mou)個時間點開始在(zai)系(xi)統底下運行(xing),而(er)不需要手動來啟動它(ta),又(you)該如(ru)(ru)何處置(zhi)呢? 這(zhe)些(xie)例行(xing)的(de)(de)工(gong)(gong)作(zuo)可能(neng)又(you)分(fen)為(wei)一(yi)次(ci)性定(ding)時工(gong)(gong)作(zuo)與循環定(ding)時工(gong)(gong)作(zuo),在(zai)系(xi)統內又(you)是(shi)哪(na)些(xie)服務(wu)在(zai)負責(ze)? 還(huan)有,如(ru)(ru)果(guo)你(ni)想(xiang)要每年在(zai)老(lao)婆的(de)(de)生(sheng)日前一(yi)天就發出一(yi)封信件提醒自己不要忘記,linux系(xi)統下該怎么做呢? 

今(jin)天我們主要學習(xi)一下(xia)一次性定時計(ji)劃任務(wu)的at命令的用(yong)法(fa)!

1.命(ming)令(ling)格(ge)式:

at[參數][時間(jian)]

2.命令功能(neng):

在一(yi)個指定(ding)的時(shi)間執(zhi)行(xing)一(yi)個指定(ding)任務,只能執(zhi)行(xing)一(yi)次,且需要開(kai)啟atd進程(

ps -ef | grep atd查看, 開(kai)(kai)啟用(yong)/etc/init.d/atd start or restart; 開(kai)(kai)機即啟動則需要運行 chkconfig --level 2345 atd on)

3.命令參數:

-m 當指(zhi)定的(de)任務被完成(cheng)之后,將給用戶發(fa)送郵件,即使沒有標準輸(shu)出

-I atq的別名

-d atrm的別名

-v 顯示(shi)任務將被執行的時間

-c 打印任務(wu)的內容到標準輸出

-V 顯示版本信息

-q<列隊> 使用(yong)指定的列隊

-f<文件> 從(cong)指定(ding)文件讀(du)入任務而不(bu)是(shi)從(cong)標準輸入讀(du)入

-t<時間參數(shu)> 以時間參數(shu)的形式提交要(yao)運行(xing)的任務(wu) 

at允(yun)許(xu)使用(yong)一套相(xiang)當復雜的(de)(de)指(zhi)(zhi)(zhi)(zhi)定時(shi)(shi)間(jian)(jian)的(de)(de)方法。他(ta)能(neng)(neng)(neng)夠(gou)(gou)接(jie)受在當天的(de)(de)hh:mm(小時(shi)(shi):分鐘)式(shi)(shi)的(de)(de)時(shi)(shi)間(jian)(jian)指(zhi)(zhi)(zhi)(zhi)定。假如該(gai)時(shi)(shi)間(jian)(jian)已過(guo)去,那么就(jiu)放在第二(er)天執(zhi)(zhi)行。當然也能(neng)(neng)(neng)夠(gou)(gou)使用(yong)midnight(深夜),noon(中午(wu)),teatime(飲茶時(shi)(shi)間(jian)(jian),一般是下(xia)午(wu)4點)等(deng)比較模糊的(de)(de) 詞語來指(zhi)(zhi)(zhi)(zhi)定時(shi)(shi)間(jian)(jian)。用(yong)戶(hu)還能(neng)(neng)(neng)夠(gou)(gou)采用(yong)12小時(shi)(shi)計(ji)(ji)時(shi)(shi)制(zhi),即在時(shi)(shi)間(jian)(jian)后(hou)面加上(shang)AM(上(shang)午(wu))或PM(下(xia)午(wu))來說(shuo)明是上(shang)午(wu)還是下(xia)午(wu)。 也能(neng)(neng)(neng)夠(gou)(gou)指(zhi)(zhi)(zhi)(zhi)定命(ming)令執(zhi)(zhi)行的(de)(de)具體日(ri)(ri)期(qi),指(zhi)(zhi)(zhi)(zhi)定格式(shi)(shi)為month day(月(yue)(yue)(yue) 日(ri)(ri))或mm/dd/yy(月(yue)(yue)(yue)/日(ri)(ri)/年)或dd.mm.yy(日(ri)(ri).月(yue)(yue)(yue).年)。指(zhi)(zhi)(zhi)(zhi)定的(de)(de)日(ri)(ri)期(qi)必須跟(gen)在指(zhi)(zhi)(zhi)(zhi)定時(shi)(shi)間(jian)(jian)的(de)(de)后(hou)面。 上(shang)面介紹(shao)的(de)(de)都是絕(jue)對(dui)(dui)計(ji)(ji)時(shi)(shi)法,其實(shi)還能(neng)(neng)(neng)夠(gou)(gou)使用(yong)相(xiang)對(dui)(dui)計(ji)(ji)時(shi)(shi)法,這(zhe)(zhe)對(dui)(dui)于安(an)排不久(jiu)就(jiu)要執(zhi)(zhi)行的(de)(de)命(ming)令是很(hen)有好處的(de)(de)。指(zhi)(zhi)(zhi)(zhi)定格式(shi)(shi)為:now + count time-units ,now就(jiu)是當前時(shi)(shi)間(jian)(jian),time-units是時(shi)(shi)間(jian)(jian)單(dan)位,這(zhe)(zhe)里(li)能(neng)(neng)(neng)夠(gou)(gou)是minutes(分鐘)、hours(小時(shi)(shi))、days(天)、weeks(星期(qi))。count是時(shi)(shi)間(jian)(jian)的(de)(de)數(shu)量,究竟是幾(ji)天,還是幾(ji)小時(shi)(shi),等(deng)等(deng)。 更有一種計(ji)(ji)時(shi)(shi)方法就(jiu)是直接(jie)使用(yong)today(今天)、tomorrow(明天)來指(zhi)(zhi)(zhi)(zhi)定完成命(ming)令的(de)(de)時(shi)(shi)間(jian)(jian)。

TIME:時(shi)間格式,這(zhe)里可(ke)以定義出什么時(shi)候要進行 at&nbsp;這(zhe)項任務的時(shi)間,格式有:

HH:MM

ex> 04:00

在今日的 HH:MM 時(shi)(shi)刻進行,若該時(shi)(shi)刻已超(chao)過,則(ze)明天的 HH:MM 進行此任務。

HH:MM YYYY-MM-DD

ex> 04:00 2009-03-17

強制規定(ding)在某(mou)年某(mou)月的(de)某(mou)一天的(de)特殊(shu)時刻進行該項任務

HH:MM[am|pm] [Month] [Date]

ex> 04pm March 17

也是一(yi)樣(yang),強制(zhi)在(zai)某(mou)年某(mou)月某(mou)日的某(mou)時(shi)刻進行該(gai)項任務

HH:MM[am|pm] + number [minutes|hours|days|weeks]

ex> now + 5 minutes

ex> 04pm + 3 days

就是說,在某個(ge)(ge)時間點(dian)再加(jia)幾(ji)個(ge)(ge)時間后(hou)才進行該項任務。

4.使用實例(li):

實例1:三天(tian)后的下(xia)午 5 點鍾執行 /bin/ls

命(ming)令:

at 5pm+3 days

輸出:

[root@localhost ~]# at 5pm+3 days

at> /bin/ls

at> <EOT>

job 7 at 2013-01-08 17:00

[root@localhost ~]#

說明:

實例2:明(ming)天(tian)17點鐘(zhong),輸出(chu)時間到指定文件(jian)內

命令:

at 17:20 tomorrow

輸出:

[root@localhost ~]# at 17:20 tomorrow

at> date >/root/2013.log  ;       

at> <EOT>

job 8 at 2013-01-06 17:20

[root@localhost ~]#

說明:

實(shi)例3計劃任(ren)務設定后,在沒有(you)執(zhi)行之(zhi)前我們可以用atq命令來查(cha)看系統沒有(you)執(zhi)行工作任(ren)務

命令(ling):

atq

輸出:

[root@localhost ~]# atq

8       ;2013-01-06 ;17:20 a root

7  &nbsp; &nbsp;  2013-01-08 17:00 a root

[root@localhost ~]#

說明:

實(shi)例4:刪除已經設置的(de)任務

命令(ling):

atrm 7

輸出(chu):

[root@localhost ~]# atq

8       2013-01-06&nbsp;17:20 a root

7      &nbsp;2013-01-08 17:00 a root

[root@localhost ~]# atrm 7

[root@localhost ~]# atq

8     &nbsp; 2013-01-06 17:20 a root

[root@localhost ~]#

說明:

實(shi)例(li)5:顯示已經(jing)設置的任務內(nei)容

命令:

at -c 8

輸(shu)出:

[root@localhost ~]# at -c 8

#!/bin/sh

# atrun uid=0 gid=0

# mail     root 0

umask 22此處省略(lve)n個字(zi)符(fu)

date >/root/2013.log

[root@localhost ~]#

說明:

實(shi)例6:

命令:

輸出:

說明:

5.atd 的啟動與 at 運行(xing)的方式

5.1 atd 的啟動(dong)

要使用一次性計劃任務時(shi),我們的 Linux 系統上面必須要(yao)有負責這個計劃任務的(de)服務,那就是 atd 服務。 不過并非所(suo)有的 Linux distributions 都默認會把(ba)他(ta)打開的,所(suo)以,某些時刻我們(men)需要(yao)手動將atd 服務激(ji)(ji)活(huo)(huo)才行。&nbsp;激(ji)(ji)活(huo)(huo)的方法很簡(jian)單,就是(shi)這樣:

命令:

/etc/init.d/atd start 

/etc/init.d/atd restart 

輸出:

[root@localhost /]# /etc/init.d/atd start

[root@localhost /]# /etc/init.d/atd 

用法(fa):/etc/init.d/atd {start|stop|restart|condrestart|status}

[root@localhost /]# /etc/init.d/atd stop

停止 atd:[確定]

[root@localhost /]# ps -ef|grep atd

root &nbsp;   25062 24951  0 14:53&nbsp;pts/0    00:00:00 grep atd

[root@localhost /]# /etc/init.d/atd start

[確(que)定]td:[確(que)定]

[root@localhost /]# ps -ef|grep atd

root&nbsp;    25068     1  0 14:53 ?       &nbsp;00:00:00 /usr/sbin/atd

root     25071 24951  0 14:53 pts/0    00:00:00 grep atd

[root@localhost /]# /etc/init.d/atd restart

停止 atd:[確定]

[確定]td:[確定]

[root@localhost /]#

說明:

/etc/init.d/atd start 沒有啟動的時候,直接啟動atd服務

/etc/init.d/atd restart 服(fu)務已經(jing)啟動后,重啟 atd 服(fu)務

備注(zhu):配置一下啟(qi)動時就啟(qi)動這個(ge)服(fu)務,免(mian)得(de)每(mei)次(ci)重新啟(qi)動都得(de)再來一次(ci)

命令:

chkconfig atd on

輸出:

[root@localhost /]# chkconfig atd on

[root@localhost /]#

5.2 at 的運行(xing)方(fang)式(shi)

既然是計劃任務,那么應該(gai)會有任務執行的(de)方(fang)式,并且將這些(xie)任務排進行程表中(zhong)那么產生計劃任務的(de)方式是怎(zen)么進(jin)行(xing)的(de)? 事實上,我們使用 at 這個(ge)命令(ling)來產生所要運行的(de)計劃任務,并(bing)將這個計(ji)劃任務以文字檔的方式寫入 /var/spool/at/ 目(mu)錄內,該工作便能等(deng)待 atd 這個服務的取用(yong)與運行了。就這么簡單。

不過,并(bing)不是所(suo)有的(de)人都可以(yi)進(jin)行(xing) at 計(ji)劃任務(wu)。為(wei)什么因為(wei)系統安(an)全的原(yuan)因。很多主機被(bei)所謂的攻擊破解(jie)后,最常(chang)發現的就是(shi)他(ta)們的系(xi)統當中多了很多的黑客程序, 這些程序非常可(ke)能運用(yong)一些計(ji)劃任務來運行或(huo)搜集你的(de)系統運行(xing)信息,并定時的發(fa)送黑(hei)客。 所(suo)以,除非是(shi)你(ni)認可的(de)帳(zhang)號,否則(ze)先不要(yao)讓他們使用 at 命令。那怎么(me)達到使用(yong) at 的可控呢?

我(wo)們可以利用 /etc/at.allow 與 /etc/at.deny 這兩(liang)個文件(jian)來進行 at 的使用限制加上這兩個文件(jian)后, at ;的(de)(de)工作(zuo)情(qing)況是這樣的(de)(de):

先找尋 /etc/at.allow 這個(ge)文(wen)件,寫(xie)在這個(ge)文(wen)件中(zhong)的使(shi)(shi)(shi)用(yong)(yong)者才能(neng)使(shi)(shi)(shi)用(yong)(yong) at ,沒有(you)在這個(ge)文(wen)件中(zhong)的使(shi)(shi)(shi)用(yong)(yong)者則(ze)不能(neng)使(shi)(shi)(shi)用(yong)(yong) at (即使(shi)(shi)(shi)沒有(you)寫(xie)在 at.deny 當中(zhong));

如果 /etc/at.allow 不(bu)存在,就尋找 /etc/at.deny 這(zhe)個文(wen)(wen)件(jian),若寫在這(zhe)個 at.deny 的使(shi)用者(zhe)則不(bu)能使(shi)用 at ,而沒有在這(zhe)個 at.deny 文(wen)(wen)件(jian)中的使(shi)用者(zhe),就可以使(shi)用 at 命令(ling)了。

如果兩個文件(jian)都不存(cun)在,那(nei)么只有 root 可以(yi)使用 at 這個命令。

透過這個(ge)說明,我們知道 /etc/at.allow 是管理較為(wei)嚴格的(de)方(fang)式,而 /etc/at.deny 則較為(wei)松散&nbsp;(因(yin)為(wei)帳號沒有(you)在(zai)該文件中,就能夠運行 at 了)。在(zai)一般的(de) distributions 當中,由于假設系(xi)統(tong)(tong)上的所有(you)用戶(hu)都是可信任的, 因(yin)此(ci)系(xi)統(tong)(tong)通(tong)常會保留一(yi)個空的 /etc/at.deny 文(wen)件(jian),意思(si)是允許所有(you)人使(shi)用 at 命令的意思(si) (您可以自行檢查(cha)一(yi)下該(gai)文(wen)件(jian))。 不過,萬一(yi)你不希望有(you)某些(xie)使(shi)用者使(shi)用 at 的話(hua),將那個使(shi)用者的帳號寫入 /etc/at.deny 即(ji)可! 一(yi)個帳號寫一(yi)行。

posted @ 2013-01-05 16:17  peida  閱讀(91267)  評論(7)    收藏  舉報