crontab 是 Linux 系統上的一個工具,可以讓使用者或管理者設定一些定期要執行的指令或程式,稱為排程工作(cron job)。
crontab 的設定檔是一個表格,每一行代表一個排程工作,每一行又分成六個欄位,用空白隔開。
前五個欄位是用來設定排程工作的執行時間,最後一個欄位是要執行的指令或程式。本文將介紹如何使用 crontab 的前五碼來設定不同的執行時間。
開啟工作排程表
在 Linux 指令列,我們可以輸入「crontab -e」開啟工作排程表。
在Unix/Linux系統中,crontab 是用來設置和管理Cron Jobs的指令,而 -e 選項則是告訴系統要編輯(edit)當前使用者的Cron Job 設定。
這個指令會打開一個文本編輯器(比如vi或者nano),讓你可以編輯當前使用者的Cron任務排程設定。
這個編輯器會展示當前的 Cron 表達式列表,讓你可以增加、修改或刪除計劃任務。完成編輯並保存後,系統會自動應用新的設定。
crontab 的前五碼的意義
crontab 的前五碼分別代表以下的時間單位:
- 分鐘(0 到 59)
- 小時(0 到 23)
- 日(1 到 31)
- 月份(1 到 12)
- 星期幾(0 到 6,0 和 7 都代表週日)
每個欄位可以填入一個數字,或者使用一些特殊的符號,來表示不同的時間點或區間。以下是一些常用的符號:
- 星號(*):代表任意時間,例如在月份欄位填入 * 就表示任何月份都可以。
- 逗號(,):分隔多個不同的時間點,例如在小時欄位填入 3,6,9 就表示 3 點、6 點和 9 點都可以。
- 減號(-):表示一段時間區間,例如在小時欄位填入 8-12 就表示從 8 點到 12 點都可以,相當於 8,9,10,11,12。
- 斜線加數字(/n):表示每隔 n 個單位的時間,例如在分鐘欄位填入 */5 就表示每隔 5 分鐘,相當於 0,5,10,15,…,55。
crontab 的前五碼的範例
以下是一些使用 crontab 的前五碼設定排程工作的範例,每個範例都會有一個註解說明其意義。
# 每天早上 8 點 30 分執行
30 08 * * * /path/to/command
# 每週日下午 6 點 30 分執行
30 18 * * 0 /path/to/command
# 每年 6 月 10 日早上 8 點 30 分執行
30 08 10 06 * /path/to/command
# 每月 1 日、15 日、29 日晚上 9 點 30 分執行
30 21 1,15,29 * * /path/to/command
# 每隔 10 分鐘執行
*/10 * * * * /path/to/command
# 從早上 9 點到下午 6 點,每個整點執行
00 09-18 * * * /path/to/command
結語
crontab 的前五碼是用來設定排程工作的執行時間,可以使用不同的符號來表示不同的時間點或區間。使用 crontab 可以讓使用者或管理者自動化一些重複性的工作,提高效率和準確性。
發佈留言