以前說了使用crontab實現定時執行任務,假如咱們只是想要讓特定任務運行一次,那麼,這時候就要用到at監控程序了。
1、at服務html
cron是一個linux下 的定時執行工具,能夠在無需人工干預的狀況下運行做業。
service atd start //啓動服務
service atd stop //關閉服務
service atd restart //重啓服務
service atd reload //從新載入配置
service atd status //查看服務狀態 linux
2、at在配置文件:shell
at相似打印進程,會把任務放到/var/spool/at目錄中,到指定時間運行它 。at命令至關於另外一個shell,運行at time命令時,它發送一個個命令,能夠輸入任意命令或者程序。網絡
3、參數詳解工具
at [-V] [-q x] [-f file] [-mldbv] time at -c job ... atq [-V] [-q x] atrm [-V] job ...
-V : 印出版本編號 rest
-q : 使用指定的佇列(Queue)來儲存,at 的資料是存放在所謂的 queue 中,使用者能夠同時使用多個 queue,而 queue 的編號爲 a, b, c... z 以及 A, B, ... Z 共 52 個 code
-m : 即便程序/指令執行完成後沒有輸出結果, 也要寄封信給使用者 htm
-f file : 讀入預先寫好的命令檔。使用者不必定要使用交談模式來輸入,能夠先將全部的指定先寫入檔案後再一次讀入 網絡應用blog
-l : 列出全部的指定 (使用者也能夠直接使用 atq 而不用 at -l)
-d : 刪除指定 (使用者也能夠直接使用 atrm 而不用 at -d)
-v : 列出全部已經完成但還沒有刪除的指定 進程
at命令執行流程
# at 2:05 tomorrow
at>/home/kyle/do_job
at> Ctrl+D
AT Time中的時間表示方法
-----------------------------------------------------------------------
時 間 例子 說明
-----------------------------------------------------------------------
Minute at now + 5 minutes 任務在5分鐘後運行
Hour at now + 1 hour 任務在1小時後運行
Days at now + 3 days 任務在3天后運行
Weeks at now + 2 weeks 任務在兩週後運行
Fixed at midnight 任務在午夜運行
Fixed at 10:30pm 任務在晚上10點30分
Fixed at 23:59 12/31/2018 任務在2018年12月31號23點59分
[root@localhost ~]# at 5pm +3 days at> /bin/date at> <EOT> job 1 at 2016-08-30 17:00 [root@localhost ~]# atq 1 2016-08-30 17:00 a root [root@localhost ~]# at 2:05 tomorrow at> echo the end of world ! at> <EOT> job 2 at 2016-08-28 02:05 [root@localhost ~]# atq 2 2016-08-28 02:05 a root 1 2016-08-30 17:00 a root [root@localhost ~]# atrm 2 [root@localhost ~]# atq 1 2016-08-30 17:00 a root