99精品伊人亚洲|最近国产中文炮友|九草在线视频支援|AV网站大全最新|美女黄片免费观看|国产精品资源视频|精彩无码视频一区|91大神在线后入|伊人终合在线播放|久草综合久久中文

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

Linux如何使用cron進行定時任務的操作

jf_78858299 ? 來源:運維漫談 ? 作者:運維漫談 ? 2023-05-12 16:27 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

按計劃執(zhí)行命令對于計算機來說非常重要,因為假如我親自去執(zhí)行一些任務的話,可能會因為多方面因素不能按時執(zhí)行,所以定時任務就顯得非常重要了!

cron就是一個能夠執(zhí)行定時任務的命令,其實該命令本身不難,下面小編帶您詳細了解!

什么是 cron?

cron命令在 Linux 和 Unix 中無處不在,并且經(jīng)常被模仿和重新發(fā)明,以至于它幾乎是定時任務的通用術語,它是一種自動化形式,盡管它有不同的實現(xiàn),比如Dillon 的 cron、Vixie 的 cron、chrony,以及類似systemd timersanacron和systemd timers 的變體,但幾十年來,語法和工作流程基本保持不變。

在 Linux 系統(tǒng)上,目錄/var/spool被設計為用戶不打算直接與之交互的重要但低級文件的中心樞紐,管理的線軸之一/var/spool是cron表或簡稱“crontab”,Linux 系統(tǒng)上的每個用戶都有一個 crontab,用戶可以編輯、查看和刪除他們自己的 crontab,此外,用戶可以使用他們的 crontab 來安排任務。

編輯定時設置

您可以使用crontab命令以及-e(用于編輯)參數(shù)來編輯您的 crontab ,默認情況下,大多數(shù)系統(tǒng)調(diào)用vim文本編輯器。

如果你像我一樣不使用 Vim,那么你可以在你的~/.bashrc文件中為自己設置一個不同的編輯器,我將我的設置為 Emacs,但您也可以嘗試Nano、Kate或任何您最喜歡的編輯器,該EDITOR環(huán)境變量定義你在終端使用的文本編輯器,而VISUAL你在圖形模式下使用什么編輯變量定義:

export EDITOR=nano
export VISUAL=kate

使用新設置刷新 shell 會話:

$ source ~/.bashrc

現(xiàn)在您可以使用您喜歡的編輯器編輯您的 crontab:

$ crontab -e

安排任務

cron命令本質(zhì)上是一個日歷命令,可以cron通過使用五個不同的屬性來判斷您希望作業(yè)運行的頻率:分鐘minute、小時hour、日期date、月份month、工作日weekday。

這些屬性的順序是嚴格的,不一定直觀,但可以將它們視為過濾器或掩碼,默認情況下,您可能會認為所有內(nèi)容都設置為always或every。

下面的例子將touch /tmp/hello,在全年每一天的每一小時的每一分鐘的運行:

* * * * * touch /tmp/hello

您可以通過為每個屬性設置特定定義來限制這個包羅萬象的計劃,每半小時執(zhí)行任務:

30 * * * * touch /tmp/hello

您可以使用特定的時間進一步限制此命令,以下任務在每天凌晨 3:30 運行:

30 3 * * * touch /tmp/hello

定時任務僅在每個月的第一天運行:

30 3 1 * * touch /tmp/hello

可以使用 1 為 1 月設置月份,最高為 12 月設置月份,可以使用 0 設置星期日,6 設置星期六,定時任務在 4 月份的 3:15 運行,僅在星期一:

15 3 * 4 1 touch /tmp/hello

設置增量

所有這些設置都與一個值完全匹配,您還可以使用cron表示法在一段時間后運行作業(yè),例如,每 15 分鐘運行一次定時任務:

*/15 * * * * touch /tmp/hello

每三天在上午 10 點運行定時任務:

* 10 */3 * * touch /tmp/hello

每六個小時運行定時任務:

* */6 * * * touch /tmp/hello

Cron 簡寫

現(xiàn)代cron實現(xiàn)為通用計劃添加了方便的速記,這些是:

  • @hourly
  • @daily
  • @weekly
  • @monthly
  • @yearly or @annually

列出 cron 任務

使用crontab命令,可以查看計劃cron任務的列表:

$ crontab -l
15 3 * 4 1 touch /tmp/hello

刪除 crontab

完成 crontab 后,可以使用以下-r選項將其刪除:

$ crontab -r -i

該-i參數(shù)代表交互式,在刪除文件之前,它會提示您進行確認。

cron 可以做什么

cron經(jīng)典用法就是對服務器資源的備份,如果您的計算機在一天中的大部分時間或整日整夜都處于開機狀態(tài),那么您可以安排對重要分區(qū)進行例行備份,我rdiff-backup每天凌晨 3 點在我的主數(shù)據(jù)分區(qū)上運行一個備份應用程序:

$ crontab -l | grep rdiff
* 3 * * * rdiff-backup /data/ /vault/

另一個常見用途是系統(tǒng)維護,在我的 Slackware 桌面上,我每周五下午更新我的本地存儲庫目錄:

$ crontab -l | grep slack
* 14 * * 5 sudo slackpkg update

我還可以每三天在 15:00 運行一個 Ansible 腳本來整理我的下載文件夾:

$ crontab -l | grep ansible
* 15 */ 3 * * ansible-playbook / home / seth / Ansible / cleanup.yaml

對計算環(huán)境的健康進行少量投資會大有幫助,有重復數(shù)據(jù)刪除腳本、文件大小和/tmp目錄監(jiān)視器、照片調(diào)整器、文件移動器,以及許多您可以安排在后臺運行的瑣碎任務,以幫助保持系統(tǒng)整潔。

記住 cron 設置

除了想出你為什么需要之外cron,根據(jù)cron我的經(jīng)驗,最困難的事情就是記住它的語法,對自己重復這個,一遍又一遍,直到你記住它:

Minutes, hours, date, month, weekday.

Minutes, hours, date, month, weekday.

Minutes, hours, date, month, weekday.
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • Linux
    +關注

    關注

    87

    文章

    11511

    瀏覽量

    213879
  • UNIX
    +關注

    關注

    0

    文章

    296

    瀏覽量

    42346
  • 編輯器
    +關注

    關注

    1

    文章

    822

    瀏覽量

    32054
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Linux系統(tǒng)定時任務Crond

    Crond是linux系統(tǒng)中用來定期執(zhí)行命令/腳本或指定程序任務的一種服務或軟件,一般情況下,我們安裝完Centos5/6 linux操作系統(tǒng)之后,默認便會啟動Crond
    發(fā)表于 07-05 06:22

    linux的循環(huán)定時任務

    linux循環(huán)定時任務
    發(fā)表于 05-20 14:59

    嵌入式linux是如何去實現(xiàn)定時任務

    嵌入式linux用倒計時是方式代替定時任務測試過程中,嵌入式linux ,是因為使用的系統(tǒng)默認使用ash進行編譯shell腳本,導致無法正常編譯。service crond statu
    發(fā)表于 11-05 06:04

    busybox用crontab/crond在嵌入式系統(tǒng)中添加定時任務的方法

    busybox 用crontab、crond在嵌入式系統(tǒng)中添加定時任務:參考文檔:在嵌入式系統(tǒng)中,定時任務通過crond和cronttab兩個系統(tǒng)命令來聯(lián)合執(zhí)行。其中crond是定時任務的守護進程
    發(fā)表于 12-14 06:40

    Linux操作系統(tǒng)定時任務系統(tǒng)Cron入門分析

    分享到: cron是一個linux下的定時執(zhí)行工具,可以在無需人工干預的情況下運行作業(yè)。由于CronLinux的內(nèi)置服務,但它不自動起來
    發(fā)表于 11-07 10:12 ?0次下載

    PHP簡單實現(xiàn)不依賴于Unix系統(tǒng)Cron定時任務程序資料說明

    本文檔的主要內(nèi)容詳細介紹的是PHP簡單實現(xiàn)不依賴于Unix系統(tǒng)Cron定時任務程序資料說明。
    發(fā)表于 03-01 16:52 ?2次下載
    PHP簡單實現(xiàn)不依賴于Unix系統(tǒng)<b class='flag-5'>Cron</b>的<b class='flag-5'>定時任務</b>程序資料說明

    linux定時任務如何判斷文件差異?

    設計每10min執(zhí)行任務檢查/app/recode文件大小,該文件不會超過4MB,超過此大小則壓縮處理,僅保留最近的日志內(nèi)容。立馬著手檢查linux定時任務cron運行情況。 2. 初
    的頭像 發(fā)表于 03-17 10:05 ?1672次閱讀

    Python定時任務的實現(xiàn)方式

    在日常工作中,我們常常會用到需要周期性執(zhí)行的任務,一種方式是采用 Linux 系統(tǒng)自帶的 crond 結合命令行實現(xiàn)。另外一種方式是直接使用Python。接下來整理的是常見的Python定時任務
    的頭像 發(fā)表于 10-08 15:20 ?1w次閱讀

    嵌入式linux 用倒計時的方式代替定時任務

    嵌入式linux 用倒計時是方式代替定時任務測試過程中,嵌入式linux ,是因為使用的系統(tǒng)默認使用ash進行編譯shell腳本,導致無法正常編譯。service crond sta
    發(fā)表于 11-02 15:06 ?13次下載
    嵌入式<b class='flag-5'>linux</b>  用倒計時的方式代替<b class='flag-5'>定時任務</b>

    如何在SpringBoot項目中實現(xiàn)動態(tài)定時任務

    之前寫過文章記錄怎么在SpringBoot項目中簡單使用定時任務,不過由于要借助cron表達式且都提前定義好放在配置文件里,不能在項目運行中動態(tài)修改任務執(zhí)行時間,實在不太靈活。
    的頭像 發(fā)表于 09-30 11:16 ?2027次閱讀

    定時任務cron的教學

    格式 {秒數(shù)} {分鐘} {小時} {日期} {月份} {星期} {年份(可為空)} 用法 "30 * * * * ? " 每半分鐘觸發(fā)任務 "30 10 * * * ? " 每小時的10分30秒
    的頭像 發(fā)表于 01-13 15:18 ?1516次閱讀

    求一種SpringBoot定時任務動態(tài)管理通用解決方案

    SpringBoot的定時任務的加強工具,實現(xiàn)對SpringBoot原生的定時任務進行動態(tài)管理,完全兼容原生@Scheduled注解,無需對原本的定時任務
    的頭像 發(fā)表于 02-03 09:49 ?1030次閱讀

    python定時任務實踐

    由于程序需求,監(jiān)測配置變化需要設置定時任務,每分鐘執(zhí)行一次,對任務持久化要求不高,不需要時可以關閉定時任務
    的頭像 發(fā)表于 05-20 17:53 ?1203次閱讀
    python<b class='flag-5'>定時任務</b>實踐

    linux定時任務的用法總結

    習慣了使用 windows 的計劃任務,使用 linux 中的 crontab 管理定時任務時很不適應。
    的頭像 發(fā)表于 08-14 18:16 ?1153次閱讀
    <b class='flag-5'>linux</b><b class='flag-5'>定時任務</b>的用法總結

    Linux計劃任務cron詳解

    cronlinux下用來周期性的執(zhí)行某種任務或等待處理某些事件的一個守護進程,與windows下的計劃任務類似,當安裝完成操作系統(tǒng)后,默認
    的頭像 發(fā)表于 02-07 15:31 ?992次閱讀
    <b class='flag-5'>Linux</b>計劃<b class='flag-5'>任務</b><b class='flag-5'>cron</b>詳解