Linux 計畫任務 at

2021-08-03 19:46:28 字數 3465 閱讀 3296

【1】

at

在windows系統中,

windows

提供了計畫任務這一功能,在控制面板

-<

效能與維護

-<

任務計畫, 它的功能就是安排自動執行的任務。 通過

'新增任務計畫

'的一步步引導,則可建立乙個定時執行的任務。

在linux系統中你可能已經發現了為什麼系統常常會自動的進行一些任務?這些任務到底是誰在支配他們工作的?在

linux

系統如果你想要讓自己設計的備份程式可以自動在某個時間點開始在系統底下執行,而不需要手動來啟動它,又該如何處置呢? 這些例行的工作可能又分為一次性定時工作與迴圈定時工作,在系統內又是哪些服務在負責? 還有,如果你想要每年在老婆的生日前一天就發出一封信件提醒自己不要忘記,

linux

系統下該怎麼做呢?

今天我們主要學習一下一次性定時計畫任務的at命令的用法!

1.命令格式:

a

t[引數

][時間

]2.命令功能:

在乙個指定的時間執行乙個指定任務,只能執行一次,且需要開啟atd程序(

ps -ef | grep atd檢視, 開啟用

/etc/init.d/atd start or restart

; 開機即啟動則需要執行

chkconfig --level 2345 atd on

)。3.命令引數:

-m 當指定的任務被完成之後,將給使用者傳送郵件,即使沒有標準輸出

-i atq的別名

-d atrm的別名

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

-c 列印任務的內容到標準輸出

-v 顯示版本資訊

-q< > 使用指定的列隊

-f< > 從指定檔案讀入任務而不是從標準輸入讀入

-t< > 以時間引數的形式提交要執行的任務

at允許使用一套相當複雜的指定時間的方法。他能夠接受在當天的

hh:mm

(小時:

分鐘)式的時間指定。假如該時間已過去,那麼就放在第二天執行。當然也能夠使用

midnight

(深夜),

noon

(中午),

teatime

(飲茶時間,一般是下午

4點)等比較模糊的 詞語來指定時間。使用者還能夠採用

12小時計時制,即在時間後面加上

am(上午)或

pm(下午)來說明是上午還是下午。 也能夠指定命令執行的具體日期,指定格式為

month day

(月 日)或

mm/dd/yy(月/

日/年)或dd.mm.yy(日.

月.年)。指定的日期必須跟在指定時間的後面。 上面介紹的都是絕對計時法,其實還能夠使用相對計時法,這對於安排不久就要執行的命令是很有好處的。指定格式為:

now + count time-units

,now

就是當前時間,

time-units

是時間單位,這裡能夠是

minutes

(分鐘)、

hours

(小時)、

days

(天)、

weeks

(星期)。

count

是時間的數量,究竟是幾天,還是幾小時,等等。 更有一種計時方法就是直接使用

today

(今天)、

tomorrow

(明天)來指定完成命令的時間。

time:時間格式,這裡可以定義出什麼時候要進行

at 這項任務的時間,格式有:

hh:mm

ex< 04:00

在今日的 hh:mm 時刻進行,若該時刻已超過,則明天的

hh:mm

進行此任務。

hh:mm yyyy-mm-dd

ex< 04:00 2009-03-17

強制規定在某年某月的某一天的特殊時刻進行該項任務

hh:mm[am|pm] [month] [date]

ex< 04pm march 17

也是一樣,強制在某年某月某日的某時刻進行該項任務

hh:mm[am|pm] + number [minutes|hours|days|weeks]

ex< now + 5 minutes

ex< 04pm + 3 days

就是說,在某個時間點再加幾個時間後才進行該項任務。

4.使用例項:

例項1:三天後的下午

5 點鐘執行

/bin/ls

命令:

at 5pm+3 days

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

at< /bin/ls

at<

job 7 at 2013-01-08 17:00

[root@localhost ~]#

例項2:明天

17點鐘,輸出時間到指定檔案內

命令:

at 17:20 tomorrow

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

at< date

at<

job 8 at 2013-01-06 17:20

[root@localhost ~]#

ctrl+z 儲存退出!

例項3:計畫任務設定後,在沒有執行之前我們可以用

atq命令來檢視系統沒有執行工作任務

命令:

atq

輸出:

[root@localhost ~]#atq

8       2013-01-06 17:20 a root

7       2013-01-08 17:00 a root

例項4:刪除已經設定的任務

命令: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

例項5:顯示已經設定的任務內容

命令:

at -c 8

輸出:[root@localhost ~]#at -c 8

#!/bin/sh

#atrun uid=0 gid=0

#mail     root 0

umask 22此處省略

n個字元

date

[root@localhost ~]#

Linux計畫任務

1.at命令 指定乙個時間執行乙個任務。2.cron命令 根據乙個時間表自動執行任務。3.anacron命令 在乙個指定時間間隔錯過後自動執行任務。at命令 安排乙個任務在未來執行,需要乙個系統後台atd程序。4.如果這個程序沒有開啟,那麼執行 etc init.d atd restart chkc...

Linux 計畫任務

at命令可以在某一指定時間排程一次性作業命令格式 at q x l f file d v time引數含義 q使用指定的佇列來儲存at資料,預設儲存在a佇列,隊列表號為a z,a z總52個 l列出所有的at計畫任務,等同於atq命令 d刪除at計畫任務,等同於atrm v列出所有已經完成單尚未刪除...

linux計畫任務

cron是乙個linux下的定時執行工具,可以在無需人工干預的情況下執行作業。由於cron 是linux的內建服務,但它不自動起來,可以用以下的方法啟動 關閉這個服務 sbin service crond start 啟動服務 sbin service crond stop 關閉服務 sbin se...