Ubuntu定时任务crontab命令介绍
通過Linux上的crontab命令,我們可以在規定的間隔時間執行指定的系統指令或腳本。時間間隔的單位可以是分鐘、小時、日、月、周及以上的任意組合。
crontab默認在Ubuntu上是已經安裝的,若未安裝,則可執行以下命令進行安裝:
sudo apt-get install cron
cron服務(守護進程)在系統后臺運行,并且會持續地檢查/etc/crontab文件和/etc/cron.*/目錄,也同樣會檢查/var/spool/cron/目錄。每個用戶都可以擁有自己的crontab文件,這些文件都位于/var/spool/cron/crontabs目錄中,不可以直接編輯它們,需要通過crontab命令來編輯或配置自己的定時任務。/etc/crontab是系統的crontab文件,通常只被root用戶或守護進程用于配置系統級別的任務。
crontab配件文件分為兩種不同的類型:
(1). 系統級crontab:此類型通常由那些需要root或類似權限的系統服務和重要任務是要;
(2). 用戶的crontab:用戶可以使用crontab命令來安裝屬于他們自己的定時任務。
crontab常用命令參數介紹:
# 編輯某個用戶的crontab文件內容,如果不指定用戶,則表示編輯當前用戶的crontab文件
crontab -e
# 顯示某個用戶的crontab文件內容,如果不指定用戶,則表示顯示當前用戶的crontab文件內容
crontab -l
# 從/var/spool/cron目錄中刪除某個用戶的crontab文件,如果不指定用戶,則默認刪除當前用戶的crontab文件
crontab -r
# 在刪除用戶的crontab文件時給確認提示
crontab -i # crontab -ir
crontab文件格式:第1列:分鐘(minute),取值范圍0~59;第2列:小時(hour),取值范圍0~23;第3列:日(day),取值范圍1~31;第4列:月(month),取值范圍1~12;第5列:星期(week),取值范圍0~7,這里的0或7代表星期日;第6列:要運行的命令(command)。前5列用空格分開,是設定時間的。
在以上各個列中,還可以使用以下特殊字符:
“*”:指定取值范圍內的所有可能的值,如在小時中,一個星號等同于每個小時;
“,”:指定多個值的列表,如1,5,10;
“-”:指定一個值的范圍,如1-5等同于1,2,3,4,5;
“/”:指定一個時間的間隔頻率,如在小時中,*/2,表示每2小時執行一次
crontab文件中的每一行都代表一項任務。
crontab服務管理命令:
sudo service cron status # 查看crontab服務狀態
sudo service cron start # 啟動crontab服務
sudo service cron stop # 關閉crontab服務
sudo service cron restart # 重啟crontab服務
sduo service cron reload # 重新載入crontab配置
示例:首先執行:$ crontab -e ,編輯crontab文件,內容如下圖所示,保存:
test.py內容如下:
import datetimeprint("now time:",datetime.datetime.now())
然后執行:$ sudo service cron restart ,過幾分鐘后info.txt文件的內容如下:
最后取消crontab任務,執行: $ crontab -ri ,執行結果如下圖所示,下圖中的上半部分顯示的結果是在執行crontab -ri前先執行crontab -l輸出的結果:
?
總結
以上是生活随笔為你收集整理的Ubuntu定时任务crontab命令介绍的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用Python3发送邮件测试代码
- 下一篇: Python3中PyMongo使用举例