當前位置:首頁 » 編程軟體 » linux計劃任務腳本

linux計劃任務腳本

發布時間: 2024-07-25 23:05:55

⑴ Linux下定時任務(系統任務調度、用戶任務調度)crontab使用詳解

crond是Linux下用來周期性的執行某種任務或等待處理某些事件的一個守護進程,與windows下的計劃任務類似,在CentOS Linux release 7.2.1511中默認是開機啟動的,大家可以使用命令:systemctl status crond進行查看。 crond進程定期(每分鍾)檢查是否有要執行的任務,如果有要執行的任務,則自動執行該任務。用戶在cron表
(也被稱為crontab文件)指定了定時任務,crontab也就是我們常見的定時任務設置命令。Linux下的任務調度分為兩類,系統任務調度和用戶任務調度。

系統任務調度 :系統周期性所要執行的工作,比如寫緩存數據到硬碟、日誌清理等。/etc/crontab文件就是系統任務調度的配置文件。

用戶任務調度 :用戶定期要執行的工作,比如用戶數據備份、定時郵件提醒等。用戶可以使用 crontab 工具來定製自己的計劃任務。所有用戶定義的crontab文件都被保存在/var/spool/cron目錄中。其文件名與用戶名一致,使用者許可權文件如下:

通過以上幫助信息,我們可以知道crond是執行任務計劃的一個守護進程。在使用crontab之前我們可以根據幫助信息來設置相關選項,一般情況下我們都使用默認值。

1.建立演示賬號crontab。

2.星號(*)使用舉例。

以上例子中完整演示了crontab從建立到執行的過程。「5 0 * * * echo "GeekDevOps"」表示在每天00:05執行命令:echo "GeekDevOps"。後面的星號表示只要前面條件滿足都執行。例子中的-u選項指定了用戶:crontab,-l選項列舉了相關用戶的用戶任務調度,不指定用戶則默認為root。執行結果默認寫入到用戶mail目錄下的相關文件中。

3.逗號(,)的使用舉例。

現在我們已經把用戶切換到crontab下,因此無需額外指定-u選項相關內容。「3 2,6,8 * * *」表示每天的02:03:00、06:03:00、08:03:00分別執行一次命令:ls /usr/local。

4.減號(-)的使用舉例。

例子中的「0 2-6 * * 6 df -h /」表示用戶crontab在每周六的02:00、03:00、04:00、05:00、06:00執行命令:df -h / 。

5.斜杠(/)的使用舉例。

例子中表示每隔2分鍾執行一次命令:echo "GeekDevOps">>/root/GeekDevOps.txt。

6.crontab的使用非常簡單,很容易理解,只要在取值范圍內設置執行的值基本是沒有問題的。現在我們要刪除已經設置的這些定時任務。

例子中,選項-r表示刪除所有定時任務。選項-i表示在刪除前進行再次確定,輸入y或者Y才能真正刪除。

7.備份我們設置的用戶任務調度配置文件。

8.系統任務調度的使用舉例。

系統任務調度與用戶任務調度不一樣,需要直接在/etc/crontab裡面配置,如果需要指定用戶,還需要在執行命令前指定用戶名。通過crontab -l 命令是查看不到系統任務調度任務的。

熱點內容
白加黑源碼 發布:2024-11-25 23:48:25 瀏覽:388
上傳的壁紙 發布:2024-11-25 23:47:47 瀏覽:569
如何刪除緩存的視頻 發布:2024-11-25 23:44:54 瀏覽:435
編寫刷課腳本 發布:2024-11-25 23:43:20 瀏覽:869
php圖片緩存 發布:2024-11-25 23:41:36 瀏覽:953
android獲取sd卡文件 發布:2024-11-25 23:39:34 瀏覽:151
銀線存儲 發布:2024-11-25 23:37:44 瀏覽:624
教孩子學編程python 發布:2024-11-25 23:31:05 瀏覽:912
如何開啟伺服器埠8008 發布:2024-11-25 23:30:27 瀏覽:806
python字典中文key 發布:2024-11-25 23:30:11 瀏覽:997