Linux下的at定時執行任務命令詳解

以前說了使用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
相關文章
相關標籤/搜索