天天看點

Linux 有問必答: 如何在Linux中加入cron任務Linux 有問必答: 如何在Linux中加入cron任務

提問: 我想在我的linux中安排一個計劃任務,該任務在固定時間周期性地運作。我該如何在linux中添加一個cron任務?

cron是linux中預設的計劃任務。使用cron,你可以安排一個計劃(比如:指令或者shell腳本)周期性地運作或者在指定的分鐘、小時、天、周、月等特定時間運作。cron在你安排不同的正常維護任務時是很有用的,比如周期性地備份、日志循環、檢查檔案系統、監測磁盤空間等等。

Linux 有問必答: 如何在Linux中加入cron任務Linux 有問必答: 如何在Linux中加入cron任務

(題圖來自 eagleapex.com)

<a target="_blank"></a>

要添加cron任務,你可以使用稱為crontab的指令行工具。

輸入下面的指令會建立一個以目前使用者運作的新cron任務。

$ crontab -e

如果你想要以其他使用者運作cron任務,輸入下面的指令。

$ sudo crontab -u &lt;username&gt; -e

你将會看見一個文本編輯視窗,這裡你可以添加或者編輯cron任務。預設使用nono編輯器。

Linux 有問必答: 如何在Linux中加入cron任務Linux 有問必答: 如何在Linux中加入cron任務

每個cron任務的格式如下。

&lt;分鐘&gt; &lt;小時&gt; &lt;日&gt; &lt;月&gt; &lt;星期&gt; &lt;指令&gt;

前5個元素定義了任務的計劃,最後一個元素是指令或者腳本的完整路徑。

Linux 有問必答: 如何在Linux中加入cron任務Linux 有問必答: 如何在Linux中加入cron任務

下面是一些cron任務示例。

* * * * * /home/dan/bin/script.sh: 每分鐘運作。

0 * * * * /home/dan/bin/script.sh: 每小時運作。

0 0 * * * /home/dan/bin/script.sh: 每天零點運作。

0 9,18 * * * /home/dan/bin/script.sh: 在每天的9am和6pm運作。

0 9-18 * * * /home/dan/bin/script.sh: 在9am到6pm的每個小時運作。

0 9-18 * * 1-5 /home/dan/bin/script.sh: 周一到周五的9am到6pm每小時運作。

*/10 * * * * /home/dan/bin/script.sh: 每10分鐘運作。

一旦完成上面的設定步驟後,按下ctrl+x來儲存并退出編輯器。此時,新增的計劃任務應該已經激活了。

要檢視存在的計劃任務,使用下面的指令:

$ crontab -l

如果你在linux桌面環境中,你可以使用crontab的更加友好的gui前端來添加或者添加一個cron任務。

在gnome桌面中,有一個gnome schedule(gnome-schedule包)。

Linux 有問必答: 如何在Linux中加入cron任務Linux 有問必答: 如何在Linux中加入cron任務

在kde桌面中,有一個task scheduler(kcron包)。

Linux 有問必答: 如何在Linux中加入cron任務Linux 有問必答: 如何在Linux中加入cron任務

----------------------------------------------------------------------------------------------------------------------------

原文釋出時間:2015-02-23

本文來自雲栖合作夥伴“linux中國”

繼續閱讀