Linux中國

Cron 任務入門指南

Cron 是您可以在任何類 Unix 操作系統中找到的最有用的實用程序之一。它用於安排命令在特定時間執行。這些預定的命令或任務被稱為 「Cron 任務」。Cron 通常用於運行計劃備份、監視磁碟空間、定期刪除不再需要的文件(例如日誌文件)、運行系統維護任務等等。在本簡要指南中,我們將看到 Linux 中 Cron 任務的基本用法。

Cron 任務入門指南

cron 任務的典型格式是:

分鐘(0-59) 小時(0-24) 日(1-31) 月(1-12) 星期(0-6) 要執行的命令

只需記住 cron 任務的格式或列印下面的插圖並將其放在你桌面上即可。

在上圖中,星號表示特定的時間塊。

要顯示當前登錄用戶的 crontab 文件的內容:

$ crontab -l

要編輯當前用戶的 cron 任務,請執行以下操作:

$ crontab -e

如果這是第一次編輯此文件,會詢問你使用哪個編輯器來編輯此文件。

no crontab for sk - using an empty one

Select an editor. To change later, run 'select-editor'.
1. /bin/nano <---- easiest
2. /usr/bin/vim.basic
3. /usr/bin/vim.tiny
4. /bin/ed

Choose 1-4 [1]:

選擇適合你的編輯器。這裡是一個示例 crontab 文件的樣子。

在這個文件中,你需要添加你的 cron 任務。

要編輯其他用戶的 crontab,例如 ostechnix,請執行:

$ crontab -u ostechnix -e

讓我們看看一些例子。

每分鐘 執行一次 cron 任務,需使用如下格式。

* * * * * <command-to-execute>

要每 5 分鐘運行一次 cron 任務,請在 crontab 文件中添加以下內容。

*/5 * * * * <command-to-execute>

要在每 1/4 個小時(每 15 分鐘)運行一次 cron 任務,請添加以下內容:

*/15 * * * * <command-to-execute>

要每小時的第 30 分鐘運行一次 cron 任務,請運行:

30 * * * * <command-to-execute>

您還可以使用逗號定義多個時間間隔。例如,以下 cron 任務每小時運行三次,分別在第 0、 5 和 10 分鐘運行:

0,5,10 * * * * <command-to-execute>

每半小時運行一次 cron 任務:

*/30 * * * * <command-to-execute>

每小時運行一次:

0 * * * * <command-to-execute>

每 2 小時運行一次:

0 */2 * * * <command-to-execute>

每天運行一項(在 00:00 運行):

0 0 * * * <command-to-execute>

每天凌晨 3 點運行:

0 3 * * * <command-to-execute>

每周日運行:

0 0 * * SUN <command-to-execute>

或使用,

0 0 * * 0 <command-to-execute>

它將在每周日的午夜 00:00 運行。

星期一至星期五每天運行一次,亦即每個工作日運行一次:

0 0 * * 1-5 <command-to-execute>

這項工作將於 00:00 開始。

每個月運行一次:

0 0 1 * * <command-to-execute>

於每月第 1 天的 16:15 運行:

15 16 1 * * <command-to-execute>

每季度運行一次,亦即每隔 3 個月的第 1 天運行:

0 0 1 */3 * <command-to-execute>

在特定月份的特定時間運行:

5 0 * 4 * <command-to-execute>

每個四月的 00:05 運行。

每 6 個月運行:

0 0 1 */6 * <command-to-execute>

這個定時任務將在每六個月的第一天的 00:00 運行。

每年運行:

0 0 1 1 * <command-to-execute>

這項 cron 任務將於 1 月份的第一天的 00:00 運行。

我們也可以使用以下字元串來定義任務。

@reboot 在每次啟動時運行一次。 @yearly 每年運行一次。 @annually(和 @yearly 一樣)。 @monthly 每月運行一次。 @weekly 每周運行一次。 @daily 每天運行一次。 @midnight (和 @daily 一樣)。 @hourly 每小時運行一次。

例如,要在每次重新啟動伺服器時運行任務,請將此行添加到您的 crontab 文件中。

@reboot <command-to-execute>

要刪除當前用戶的所有 cron 任務:

$ crontab -r

還有一個名為 crontab.guru 的專業網站,用於學習 cron 任務示例。這個網站提供了很多 cron 任務的例子。

有關更多詳細信息,請查看手冊頁。

$ man crontab

那麼,就是這樣。到此為止,您應該對 cron 任務以及如何實時使用它們有了一個基本的了解。後續還會介紹更多的優秀工具。敬請關注!!

乾杯!

via: https://www.ostechnix.com/a-beginners-guide-to-cron-jobs/

作者:SK 選題:lujun9972 譯者:KevinSJ 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國