定時任務 例行任務

2022-04-11 08:02:32 字數 2840 閱讀 8212

atd

/etc/init.d/atd start

/etc/at.allow

首先尋找at.allow,在其中的使用者才可以使用at,其他人不可以使用(即使不在at.deny中)

/etc/at.deny

沒有at.allow時,不在at.deny中的使用者可以使用at

at [-mldv] time

at -c工作號碼

m      當at工作完成後,即使沒有輸出資訊,也給使用者傳送email

l        小寫l,相當於atq,列出目前系統上面的所有at排程

d       相當於atrm,取消乙個在at排程中的工作

v       使用較明顯的時間格式輸出at排程任務列表

c       列出該項工作的實際命令內容

time         時間格式,定義at工作執行時間

hh:mm   今日的hh:mm,若已超過,則明日

04:00

hh:mm yyyy-mm-dd

04:00 2009-03-17

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

04pm march 17

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

04pm + 3 days

[ctrl]+d結束輸入

例:at now + 5 minutes

/bin/mail root -s "test at job" < /root/.bashrc

[ctrl]+d

at 23:00 2009-03-17

/bin/sync

/bin/sync

/bin/shutdown -h now

[ctrl]+d

1. at的執行與終端機環境無關,所有的stdout和stderr會傳送到執行者的mailbox中,要輸出資訊可以使用"echo "hello" > /dev/tty1 "

2. 系統會將at工作獨立出bash環境,直接交給系統的atd程式接管。

執行方式與寫法同at,會在系統負載小於0.8時候執行

crond

系統預設啟動

/etc/cron.allow

不在這個檔案中的使用者不可使用crontab

/etc/cron.deny

在這個檔案當中的使用者不可使用crontab

/var/log/cron

crontab [-u username] [-l|-e|-r]

u       只有root才可使用,幫助其他使用者建立crontab任務

l        查閱crontab

e       編輯crontab

r        刪除所有的crontab,只刪除一項,使用-e編輯即可

讓系統每2分鐘去執行/etc/cron.min目錄下的所有可執行檔案

*/2 * * * * root run-parts /etc/cron.min

每5分鐘執行程式

*/5 * * * * root /bin/mrtg /etc/mrtg/mrtg.cfg

以一天、七天、乙個月為期,或者在開機後立刻檢測在停機期間應該進行但是沒有進行的/etc/anacrontab中定義的任務,並將該任務執行一遍,然後anacron自行停止,可與crontab結合,達到每天執行

anacron [-sfn] [job] ..

anacron -u [job]

s       開始連續執行各項工作job,會依據時間記錄檔案的資料判斷是否進行

f        強制進行,而不去判斷時間記錄檔案的時間戳

n       立刻進行未進行的任務,而不延遲等待時間

u       僅更新時間記錄檔案的時間戳,不進行任何工作

job    由/etc/anacrontab定義的各項工作名稱,預設cron.daily、cron.weekly、cron.monthly

定義每日任務、每週任務、每月任務的執行延遲時間

從/etc/anacrontab分析到crondaily這項工作名稱的天數為1天

從/var/spool/anacron/cron.daily取出最近一次執行anacron的時間戳

將第二步得到的時間與目前的時間比較,差異為第一步的天數1以上(包含1),就準備執行命令

讀取延遲時間

延遲時間過後,執行後續命令

根據需求新增日指令碼、周指令碼、月指令碼

在/etc/cron.daily、/etc/cron.weekly、/etc/cron.monthly中加入同步時間戳的指令碼(如果不存在)

/etc/cron.daily/0anacron

if [ ! -e /var/run/anacron.pid];then

anacron -u cron.daily

fi/etc/anacrontab定義執行延遲時間

設定anacron開機啟動並且根據需要在crontab中排程anacron執行時間

linux定時任務 at定時任務

at命令是一次性定時計畫任務,at的守護程序atd會以後臺模式執行,檢查作業佇列來執行作業。atd守護程序會檢查系統上的乙個特殊目錄來獲取at命令的提交的作業,預設情況下,atd守護程序每60秒檢查一次目錄,有作業時,會檢查作業執行時間,如果時間與當前時間匹配,則執行此作業。注意 at命令是一次性定...

非同步任務 定時任務

一 在主程式開啟非同步註解功能 enableasync enableasync 開啟非同步註解功能 public class 二 標明非同步類 asyns service async 表注該類為非同步類 public class asynservice catch interruptedexcept...

at定時任務

at的守護程序每60秒檢查一次作業佇列,有作業時檢查作業,時間恰好達到,則執行作業。前提 保證atd程序已經啟動,檢查atd程序是否啟動 ps ef grep atd。atd的命令格式 at 選項 時間 ctrl d 結束at命令的輸入。選項 m 任務完成後給使用者傳送郵件,沒有標準輸出。i atg...