Linux Cron Job的使用及時間格式 | Linux

Linux 系統中, Cron Job 是一個非常強大且常用的工具,用於執行定期或定時任務。透過 Cron Job ,我們可以輕鬆地自動化重複性的任務,如備份數據、定時執行腳本等。本篇將介紹 Cron Job 的基本使用方法以及時間格式的說明,並提供簡單易懂的範例供參考。

什麼是Cron Job?

Cron是一個在Unix-like系統中用於定期執行任務的工具。Cron Job是由Cron守護進程管理的任務,這些任務可在預定的時間執行。Cron Job非常靈活,可以用於執行各種任務,從系統維護到應用程式腳本的自動化。

時間格式

Cron Job的時間格式是由五個欄位組成,分別表示分鐘、小時、日期、月份和星期幾。每個欄位可以是一個數字、一個範圍、一個列表或者是通配符。下面是各個欄位的說明:

* * * * * CMD
第1個*=> minutes
第2個*=> hours
第3個*=> Date of Month, ex: 2 or 25
第4個*=> Which month to run, ex: December
第5個*=> the day of the week, ex: Sunday or Tuesday
欄位 說明 可設定的值
MIN 分鐘 0 到 59
HOUR 小時 0 到 23
DOM 1 到 31
MON 月份 1 到 12,此欄位亦可用英文簡稱取代,例如一月也可以寫 Jan。
DOW 星期幾 0(週日)到 6(週六),7 也代表週日。此欄位亦可用英文簡稱取代,例如週日也可以寫 Sun。
CMD 要定期執行的指令 任何可執行的程式或指令稿(包含參數),例如 /path/to/cmd –your –parameter。

要設置一個Cron Job,可以使用crontab命令編輯Cron任務列表。以下是一個簡單的範例:

# 打開Cron Job編輯器
crontab -e

crontab -u <username> -e

sudo crontab -u root -e

不知道怎麼設定的話,可以使用cron guru

Crontab Guru
  • 它可以幫你快速編輯cron

然後按照提示,添加你的Cron任務。例如,如果你想每天凌晨1點執行一次一個腳本,你可以添加以下內容:

0 1 * * * /path/to/your/script.sh

這樣就會在每天的1點準時執行/path/to/your/script.sh腳本。

簡易範例

以下是一些常見的Cron Job範例:

  1. 每天凌晨3點執行一次備份腳本:
0 3 * * * /path/to/backup.sh
  1. 每週一的中午12點30分執行一次更新腳本:
30 12 * * 1 /path/to/update.sh
  1. 每小時執行一次清理臨時文件的任務:
0 * * * * /path/to/cleanup.sh

透過這些範例,你可以根據自己的需求定製Cron Job,讓系統自動執行重複性任務,從而提高工作效率。

希望本篇文章對你理解Linux Cron Job的使用方法和時間格式有所幫助!