国产91在线无码_少妇人妻无码高清_91人妻中文字幕无码专区在线_国产福利在线播放_免费 无码 国产成年视频网站

Linux定時任務工具crontab入門(linux crontab定時任務)

Linux crontab是用來定期執(zhí)行程序的命令。當安裝完成操作系統(tǒng)之后,默認便會啟動此任務調度命令。

Linux定時任務工具crontab入門(linux crontab定時任務)

crond 命令每分鐘會定期檢查是否有要執(zhí)行的工作,如果有要執(zhí)行的工作便會自動執(zhí)行該工作。

注意:新創(chuàng)建的 cron 任務,不會馬上執(zhí)行,至少要過 2 分鐘后才可以,當然你可以重啟 cron 來馬上執(zhí)行。

而 linux 任務調度的工作主要分為以下兩類:

1、系統(tǒng)執(zhí)行的工作:系統(tǒng)周期性所要執(zhí)行的工作,如備份系統(tǒng)數(shù)據(jù)、清理緩存

2、個人執(zhí)行的工作:某個用戶定期要做的工作,例如每隔10分鐘檢查郵件服務器是否有新信,這些工作可由每個用戶自行設置

Linux定時任務工具crontab入門(linux crontab定時任務)

一、crontab的基本用法

分鐘(0-59) 小時(0-24) 日(1-31) 月(1-12)星期(0-7) <要執(zhí)行的命令>

其中星期從0到6,0表示周日,1~7對應星期一到星期日,也可以用0來表示星期日。

Linux定時任務工具crontab入門(linux crontab定時任務)

上圖每個星號*分別對應具體的時間塊(分鐘、小時、日等)。

執(zhí)行crontab -l可以列出當前用戶的所有定時任務。

如果想要編輯當前用戶的定時任務,執(zhí)行crontab -e,如果是第一次編輯crontab定時任務,需要先選擇想要使用的編輯器,如下所示,輸入對應的編號,如輸入3,選擇vim編輯器。

[root@centos-160 ~]# crontab -lno crontab for root[root@centos-160 ~]# crontab -eno crontab for root - using an empty onecrontab: no changes made to crontab

crontab常見命令參數(shù):

usage: crontab [-u user] file

crontab [-u user] [ -e | -l | -r ]

(default operation is replace, per 1003.2)

-e (edit user's crontab)

-l (list user's crontab)

-r (delete user's crontab)

-i (prompt before deleting user's crontab)

-s (selinux context)

crontab -e – 編輯該用戶的 crontab,當指定 crontab 不存在時新建。

crontab -l – 列出該用戶的 crontab。

crontab -r – 刪除該用戶的 crontab。

crontab -u<用戶名稱> – 指定要設定 crontab 的用戶名稱。

二、crontab使用入門

1. 每分鐘執(zhí)行一次命令

* * * * * <要執(zhí)行的命令>

簡要說明:

  • * 代表著所有可能取到的值,除了直接用 * 外,下面的幾個例子也較為常用
  • 當指定 */5 在分鐘字段,代表每五分鐘。
  • 當指定 0-10/2 在分鐘字段,代表在前十分鐘的每兩分鐘

比如,每分鐘進行一次手工同步時間,就可以在crontab文件中寫入下面的crontab 語句:

* * * * * chronyc -a makestep

保存、退出編輯器。然后可以通過crontab -l看到我們剛剛添加的任務,等待幾分鐘就可以看到時間同步了。

Linux定時任務工具crontab入門(linux crontab定時任務)

2. 每5分鐘執(zhí)行一次命令

*/5 * * * * <要執(zhí)行的命令>

比如每5分鐘往文件~/hello.txt中寫入一個“hello world”,就可以在crontab文件中寫入下面的crontab語句:

*/5 * * * * echo "hello world" >> ~/hello.txt

Linux定時任務工具crontab入門(linux crontab定時任務)

等待一些時間就可以看到~/hello.txt文件里面多了幾個”hello world”。

Linux定時任務工具crontab入門(linux crontab定時任務)

3. 每15分鐘執(zhí)行一次命令

*/15 * * * * <要執(zhí)行的命令>

4. 每個小時的27分執(zhí)行一次命令

27 * * * * <要執(zhí)行的命令>

該定時任務每小時執(zhí)行一次,每次在27分執(zhí)行。

5. 也可以指定多個具體的執(zhí)行時間點,使用逗號分隔

0,5,10 * * * * <要執(zhí)行的命令>

將在每個小時的0分、5分、10分分別執(zhí)行一次。

6. 每半小時,即每30分鐘執(zhí)行一次命令

*/30 * * * * <要執(zhí)行的命令>

如果現(xiàn)在是10點整,那么該任務將分別在10:30 11:00 11:30 … 執(zhí)行。

需要注意的是具體的時間和設置定時任務的時間是無關的,比如我們在10:17設置了定時任務,那么這個定時任務執(zhí)行的時間不是10:47、11:17、11:47等,而是10:30、11:00、11:30等。

7. 每小時的整點即0分時執(zhí)行一次命令

0 * * * * <要執(zhí)行的命令>

8. 每1小時執(zhí)行一次命令

0 */1 * * * <要執(zhí)行的命令>

如果當前時間是10點,那么下次執(zhí)行時間就是11點。

0 */1 * * * rm -f /var/log/clickhouse-server/*.log

三、如何查看crontab的日志記錄

看 /var/log/cron這個文件就可以,可以用tail -f /var/log/cron觀察。

Linux定時任務工具crontab入門(linux crontab定時任務)

四、CronTab語法自動生成器

通過基于網(wǎng)頁的crontab語法生成器可以快速地檢查crontab語句是否符合預期或者根據(jù)我們期望的間隔時間快速生成想要的crontab語句,下面兩個網(wǎng)站都是英文的,但是都是很簡單的英文,很容易上手。

在crontab.guru 中輸入crontab語句,網(wǎng)站將會告訴我們這段語句的含義,以及執(zhí)行的具體時間,可以用來檢驗編寫的crontab語句是否正確。

Linux定時任務工具crontab入門(linux crontab定時任務)

還可以在下面的網(wǎng)站中可以設定我們想要的運行間隔,然后網(wǎng)頁會自動生成對應的crontab語句。

http://cron.ciding.cc/

Linux定時任務工具crontab入門(linux crontab定時任務)

也可以反解析Cron 表達式:0 */5 * * *

Linux定時任務工具crontab入門(linux crontab定時任務)

版權聲明:本文內容由互聯(lián)網(wǎng)用戶自發(fā)貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權/違法違規(guī)的內容, 請發(fā)送郵件至 舉報,一經(jīng)查實,本站將立刻刪除。

(0)
上一篇 2022年9月16日 上午9:49
下一篇 2022年9月16日 上午10:03

相關推薦