當你開始使用腳本時,可能會想要在某個預設時間運行腳本。 Linux系統提供了多個在預選時間運行腳本的方法:at命令和cron表,來安排腳本的運行時間和頻率。shell
一.用at命令來計劃執行做業url
at命令容許指定Linux系統什麼時候運行腳本。at命令會將做業提交到隊列中,指定shell什麼時候運 行該做業。at的守護進程會之後臺模式運行,檢查做業隊列來運行做業。blog
at命令的基本格式很是簡單:at [-f filename] time隊列
默認狀況下,at命令會將STDIN的輸入放到隊列中。你能夠用-f參數來指定用於讀取命令(腳本文件)的文件名。進程
time參數指定了Linux系統什麼時候運行該做業。若是你指定的時間已經錯過,at命令會在次日的那個時間運行指定的做業。crontab
在如何指定時間這個問題上,你能夠很是靈活。at命令能識別多種不一樣的時間格式。test
輸出:後臺
atq命令能夠查看系統中有哪些做業在等待,做業列表中顯示了做業號、系統運行該做業的日期和時間及其所在的做業隊列。bfc
一旦知道了哪些做業在做業隊列中等待,就能用atrm命令來刪除等待中的做業。配置
只要指定想要刪除的做業號就好了。只能刪除你提交的做業,不能刪除其餘人的。
二. cron時間表
Linux系統使用cron程序來安排要按期執行的做業。cron程序會在後臺運行並檢查一個特殊的 表(被稱做cron時間表),以獲知已安排執行的做業。
cron時間表採用一種特別的格式來指定做業什麼時候運行。
其格式以下:min hour dayofmonth month dayofweek command
cron時間表容許你用特定值、取值範圍(好比1~5)或者是通配符(星號)來指定條目
在crontest.cron中編寫如下:
加入定時任務中:crontab /root/shellleaner/crontest.cron
每一個系統用戶(包括root用戶)均可以用本身的cron時間表來運行安排好的任務。Linux提供 了crontab命令來處理cron時間表。要列出已有的cron時間表,能夠用-l選項:crontab -l
若是你建立的腳本對精確的執行時間要求不高,用預配置的cron腳本目錄會更方便。有4個 基本目錄:hourly、daily、monthly和weekly。
所以,若是腳本須要天天運行一次,只要將腳本複製到daily目錄,cron就會天天執行它。
有什麼討論的內容,能夠加我公衆號: