国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

【Linux】crontab 定時任務(wù)

這篇具有很好參考價值的文章主要介紹了【Linux】crontab 定時任務(wù)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報違法"按鈕提交疑問。

當(dāng)你需要在Linux系統(tǒng)中定期執(zhí)行某些任務(wù)時,crontab(cron table)是一個非常有用的工具。它允許你根據(jù)預(yù)定的時間表創(chuàng)建和管理定時任務(wù)。

一、從守護(hù)進(jìn)程到crond進(jìn)程

1.1 Linux 守護(hù)進(jìn)程

按照進(jìn)程的功能和運(yùn)行的程序分類,進(jìn)程可劃分為兩大類。

  • 系統(tǒng)進(jìn)程:可以執(zhí)行內(nèi)存資源分配和進(jìn)程切換等管理工作;而且,該進(jìn)程的運(yùn)行不受用戶的干預(yù),即使是root用戶也不能干預(yù)系統(tǒng)進(jìn)程的運(yùn)行。
  • 用戶進(jìn)程:通過執(zhí)行用戶程序、應(yīng)用程序或內(nèi)核之外的系統(tǒng)程序而產(chǎn)生的進(jìn)程,此類進(jìn)程可以在用戶的控制下運(yùn)行或關(guān)閉。

針對用戶進(jìn)程,又可以分為交互進(jìn)程、批處理進(jìn)程和守護(hù)進(jìn)程三類。

  • 交互進(jìn)程:由一個shell終端啟動的進(jìn)程,在執(zhí)行過程中,需要與用戶進(jìn)行交互操作,可以運(yùn)行于前臺,也可以運(yùn)行在后臺。
  • 批處理進(jìn)程:該進(jìn)程是一個進(jìn)程集合,負(fù)責(zé)按順序啟動其他的進(jìn)程。
  • 守護(hù)進(jìn)程:守護(hù)進(jìn)程是一直運(yùn)行的一種進(jìn)程,經(jīng)常在Linux系統(tǒng)啟動時啟動,在系統(tǒng)關(guān)閉時終止。它們獨(dú)立于控制終端并且周期性地執(zhí)行某種任務(wù)或等待處理某些發(fā)生的事件。例如,httpd進(jìn)程一直處于運(yùn)行狀態(tài),等待用戶的訪問。還有經(jīng)常用的crond進(jìn)程,這個進(jìn)程類似于Windows地計劃任務(wù),可以周期性地執(zhí)行用戶設(shè)定的某些任務(wù)。

1.2 任務(wù)調(diào)度進(jìn)程crond

crond 是 Linux 下用來周期性地執(zhí)行某種任務(wù)或等待處理某些事件的一個守護(hù)進(jìn)程,與Windows下的計劃任務(wù)類似。當(dāng)安裝完成操作系統(tǒng)后,默認(rèn)會安裝此服務(wù)工具,并且會自動啟動crond進(jìn)程,crond進(jìn)程每分鐘會定期檢查是否有要執(zhí)行的任務(wù),如果有要執(zhí)行的任務(wù),則自動執(zhí)行該任務(wù)。

Linux下的任務(wù)調(diào)度分為兩類,系統(tǒng)任務(wù)調(diào)度和用戶任務(wù)調(diào)度。

(1)系統(tǒng)任務(wù)調(diào)度: 系統(tǒng)周期性要執(zhí)行的工作,比如寫緩存數(shù)據(jù)到硬盤、清理日志等。在/etc目錄下有一個crontab文件,這個就是系統(tǒng)任務(wù)調(diào)度的配置文件。

打開該文件,可以看到這些內(nèi)容:nvim /etc/crontab
crontab定時任務(wù),Ubuntu Linux,linux,服務(wù)器,運(yùn)維

上圖中:

  1. 第七行:指定系統(tǒng)使用的shell程序;
  2. 第八行:命令的查找路徑。(這前面2行就是設(shè)置環(huán)境變量)
  3. 18~21行:定時任務(wù)

(2)用戶任務(wù)調(diào)度: 用戶定期要執(zhí)行的工作,比如用戶數(shù)據(jù)備份、定時郵件提醒等。用戶可以使用crontab工具來定制自己的計劃任務(wù)。所有用戶定義的crontab 文件都保存在 /var/spool/cron目錄中。其文件名與用戶名一致。

二、 crontab 詳細(xì)介紹

crontab文件:每個用戶都有一個獨(dú)立的crontab文件,用于存儲他們的定時任務(wù)。這些文件通常位于/var/spool/cron/目錄下,或者還有一級目錄,以用戶名命名。

2.1 crontab 命令格式

crontab常用的使用格式有如下兩種。

crontab  [-u  user]  [file]         # 用于安裝(載入)任務(wù)
crontab  [-u  user]  [-e|-l|-r |-i] # 用于編輯、查看、刪除

選項含義如下:

  • -u user:用來設(shè)定某個用戶的crontab服務(wù)。例如,“-u ixdba”表示設(shè)定ixdba用戶的crontab服務(wù),此參數(shù)一般由root用戶來運(yùn)行。
  • file:file是命令文件的名字,表示將file作為crontab的任務(wù)列表文件并載入crontab。如果在命令行中沒有指定這個文件,crontab命令將接受標(biāo)準(zhǔn)輸入(鍵盤)上鍵入的命令,并將它們載入crontab。
  • -e:編輯某個用戶的 crontab 文件內(nèi)容。如果不指定用戶,則表示編輯當(dāng)前用戶的crontab文件。
  • -l:顯示某個用戶的 crontab 文件內(nèi)容。如果不指定用戶,則表示顯示當(dāng)前用戶的crontab文件內(nèi)容。
  • -r:從/var/spool/cron目錄中刪除某個用戶的crontab文件。如果不指定用戶,則默認(rèn)刪除當(dāng)前用戶的crontab文件。
  • -i:在刪除用戶的crontab文件時給出確認(rèn)提示。

2.2 crontab文件的含義

用戶所建立的crontab文件中,每一行都代表一項任務(wù),每行的每個字段代表一項設(shè)置。

它的格式共分為7個字段,前5個字段是時間設(shè)定段,第6個字段是執(zhí)行的用戶,第7個字段是要執(zhí)行的命令段,格式如下。

minute    hour    day    month    week   user  command

crontab定時任務(wù),Ubuntu Linux,linux,服務(wù)器,運(yùn)維

其中。

minute:表示分鐘,可以是0~59的任何整數(shù)。
hour:表示小時,可以是0~23的任何整數(shù)。
day:表示日期,可以是1~31的任何整數(shù)。
month:表示月份,可以是1~12的任何整數(shù)。
week:表示星期幾,可以是0~7的任何整數(shù),這里的0或7代表星期日。
user:用戶名,執(zhí)行該任務(wù)的用戶。也可以沒有這個字段,文件中定義的任務(wù)將有文件的所有者執(zhí)行。
command:表示要執(zhí)行的命令,可以是系統(tǒng)命令,也可以是自己編寫的腳本文件。

在以上各個字段中,還可以使用以下特殊字符。

星號(*):代表所有可能的值。例如,month 字段如果是星號,則表示在滿足其他字段的制約條件后每月都執(zhí)行該命令操作。
逗號(,):可以用逗號隔開的值指定一個列表范圍。例如,“1,2,5,7,8,9”。
中杠(-):可以用整數(shù)之間的中杠表示一個整數(shù)范圍。例如,“2-6”表示“2,3,4,5,6”。
正斜線(/):可以用正斜線指定時間的間隔頻率。例如,“0-23/2”表示每兩小時執(zhí)行一次。同時正斜線可以和星號一起使用,例如*/10,如果用在minute字段中,表示每10分鐘執(zhí)行一次

2.3 實操:編寫crontab文件

我的系統(tǒng)里,crontab文件的位置是:/var/spool/cron/crontabs/root

打開,準(zhǔn)備編寫新任務(wù)是,發(fā)現(xiàn):
crontab定時任務(wù),Ubuntu Linux,linux,服務(wù)器,運(yùn)維

提示不要直接編輯這個文件,而應(yīng)該編輯另一個臨時的文件。

編輯,肯定是能編輯的,我有權(quán)限就行。但是上面的方式可能更安全一點(diǎn),防止錯誤,增加可維護(hù)性。那就按照推薦的來吧。

使用編輯命令:crontab -e,會先讓你選擇編輯器,我使用vim來編輯。

發(fā)現(xiàn)默認(rèn)打開的是這個臨時文件
crontab定時任務(wù),Ubuntu Linux,linux,服務(wù)器,運(yùn)維

那就來編輯一下:
crontab定時任務(wù),Ubuntu Linux,linux,服務(wù)器,運(yùn)維
編寫了一個定時任務(wù)來進(jìn)行測試,每隔一分鐘,在/root/crontest.txt這個文件末尾追加一行,內(nèi)容是系統(tǒng)的當(dāng)前時間(這里用到了date命令和輸出重定向)。

注意:這里我添加了前面2行,配置環(huán)境變量,是為了防止執(zhí)行任務(wù)的時候找不到命令。

編輯完成后保存,退出nvim。然后再查看var目錄下那個crontab文件,自動就更新了(那個臨時的文件會自動刪除)。
crontab定時任務(wù),Ubuntu Linux,linux,服務(wù)器,運(yùn)維

來看看定時任務(wù)的執(zhí)行效果:
crontab定時任務(wù),Ubuntu Linux,linux,服務(wù)器,運(yùn)維
沒問題。

crontab在Linux系統(tǒng)中有許多實際應(yīng)用場景,以下是一些常見的例子:

  1. 定時備份:你可以使用crontab來定期執(zhí)行備份腳本,以保護(hù)重要數(shù)據(jù)。例如,每天晚上執(zhí)行一個備份腳本,將關(guān)鍵文件復(fù)制到另一個位置或遠(yuǎn)程服務(wù)器。

  2. 日志清理:系統(tǒng)日志和應(yīng)用程序日志可能會占用大量磁盤空間。使用crontab可以定期清理過時的日志文件,以避免磁盤空間不足問題。

  3. 系統(tǒng)維護(hù)任務(wù):crontab可以用于自動化各種系統(tǒng)維護(hù)任務(wù),如更新軟件包、執(zhí)行磁盤碎片整理、優(yōu)化數(shù)據(jù)庫等。

  4. 數(shù)據(jù)同步:如果你有多個服務(wù)器需要進(jìn)行數(shù)據(jù)同步,你可以使用crontab來定期運(yùn)行數(shù)據(jù)同步腳本,以確保數(shù)據(jù)的一致性。

  5. 網(wǎng)站監(jiān)控:你可以使用crontab來定期檢查網(wǎng)站的可用性和響應(yīng)時間,以及監(jiān)測服務(wù)器的負(fù)載情況。這樣可以及時發(fā)現(xiàn)并解決潛在的問題。

  6. 定時任務(wù)提醒:你可以使用crontab來創(chuàng)建提醒任務(wù),例如每天早上發(fā)送一封電子郵件或彈出通知來提醒你重要的任務(wù)或事件。

這只是一小部分crontab的應(yīng)用示例。實際上,你可以根據(jù)自己的需求和創(chuàng)意使用crontab來執(zhí)行各種定時任務(wù),提高工作效率和自動化操作。



遠(yuǎn) 進(jìn) 結(jié) ~ 文章來源地址http://www.zghlxwxcb.cn/news/detail-689523.html

到了這里,關(guān)于【Linux】crontab 定時任務(wù)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點(diǎn)擊違法舉報進(jìn)行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Crontab(定時任務(wù))使用: Linux-Centos7使用crontab制定定時任務(wù),定時執(zhí)行某任務(wù)

    Crontab(定時任務(wù))使用: Linux-Centos7使用crontab制定定時任務(wù),定時執(zhí)行某任務(wù)

    參考:https://blog.csdn.net/m0_49605975/article/details/120701771 1.用yum命令安裝Crontab 2.啟動,關(guān)閉,重啟 3.設(shè)置開機(jī)啟動 1.設(shè)置定時任務(wù)-進(jìn)入編輯模式 -和vim操作一至 2.查看定時任務(wù)列表 3.添加定時任務(wù) 樣例: 添加一個定時任務(wù),定時清空某個文件夾里面日志文件的內(nèi)容 3.1 編寫一個清

    2024年02月01日
    瀏覽(44)
  • 【Linux】crontab 定時任務(wù)

    【Linux】crontab 定時任務(wù)

    當(dāng)你需要在Linux系統(tǒng)中定期執(zhí)行某些任務(wù)時,crontab(cron table)是一個非常有用的工具。它允許你根據(jù)預(yù)定的時間表創(chuàng)建和管理定時任務(wù)。 按照進(jìn)程的功能和運(yùn)行的程序分類,進(jìn)程可劃分為兩大類。 系統(tǒng)進(jìn)程 :可以執(zhí)行 內(nèi)存資源分配和進(jìn)程切換等 管理工作;而且,該進(jìn)程的

    2024年02月10日
    瀏覽(28)
  • Linux 定時任務(wù)調(diào)度(crontab)

    Linux 定時任務(wù)調(diào)度(crontab)

    Crontab命令用于設(shè)置周期性被執(zhí)行的指令。該命令從標(biāo)準(zhǔn)輸入設(shè)備讀取指令,并將其存放于“crontab”文件中,以供之后讀取和執(zhí)行。 可以使用Crontab定時處理離線任務(wù),比如每天凌晨2點(diǎn)更新數(shù)據(jù)等,經(jīng)常用于系統(tǒng)任務(wù)調(diào)度。 一般Linux系統(tǒng)中都會裝有Crontab,如果沒有安裝可以使

    2024年02月07日
    瀏覽(30)
  • Linux Crontab命令定時任務(wù)

    1,crontab:是Linux,unix的定時任務(wù),需要系統(tǒng)安裝crontab程序,存儲的指定被守護(hù)進(jìn)程crond激活,每分鐘去檢查一次需要執(zhí)行的job, 2,新創(chuàng)建的cron任務(wù),不會馬上執(zhí)行,至少要過 2 分鐘后才可以,可以重啟 cron 來馬上執(zhí)行。 3,檢查是否安裝crontab: rpm -qa | grep crontab 4,全局配置文

    2024年02月16日
    瀏覽(23)
  • Linux crontab命令定時任務(wù)詳解

    Linux crontab命令定時任務(wù)詳解

    ????????crond是Linux系統(tǒng)中用來定期執(zhí)行命令或指定程序任務(wù)的一種服務(wù)或軟件,與Windows下的計劃任務(wù)類似。當(dāng)安裝完成操作系統(tǒng)后,默認(rèn)會安裝此服務(wù)工具,并且會自動啟動crond進(jìn)程。crond進(jìn)程每分鐘會定期檢查是否有要執(zhí)行的任務(wù),如果有要執(zhí)行的任務(wù),則自動執(zhí)行該任

    2024年02月04日
    瀏覽(24)
  • Linux 定時任務(wù) crontab 用法學(xué)習(xí)整理

    Linux 定時任務(wù) crontab 用法學(xué)習(xí)整理

    lsb_release -a linux中crontab命令用于設(shè)置周期性被執(zhí)行的指令,該命令從標(biāo)準(zhǔn)輸入設(shè)備讀取指令,并將其存放于“crontab”文件中,以供之后讀取和執(zhí)行。cron 系統(tǒng)調(diào)度進(jìn)程??梢允褂盟诿刻斓姆歉叻遑?fù)荷時間段運(yùn)行作業(yè),或在一周或一月中的不同時段運(yùn)行。cron是系統(tǒng)主要的調(diào)度

    2024年02月11日
    瀏覽(23)
  • Linux通過crontab定時執(zhí)行腳本任務(wù)

    Linux通過crontab定時執(zhí)行腳本任務(wù)

    在Linux中可以使用crontab來定時執(zhí)行腳本。crontab是一個用于管理定時任務(wù)的工具,可以讓在特定的時間間隔內(nèi)自動運(yùn)行腳本或命令。 需求 : 在Linux中每分鐘寫入一條信息到指定文件中,使用 cron 來定期執(zhí)行一個寫入命令或腳本 首先,在 home 目錄下創(chuàng)建一個名為 testscript.sh 的腳

    2024年02月17日
    瀏覽(33)
  • linux-crontab每分鐘定時執(zhí)行/定時任務(wù)調(diào)度

    linux-crontab每分鐘定時執(zhí)行/定時任務(wù)調(diào)度

    本文講解linux上如何調(diào)用定時任務(wù),如每分鐘打印日志,每日24點(diǎn)執(zhí)行日志切割腳本等等。 在Linux系統(tǒng)中,crontab命令是一個用于執(zhí)行定時任務(wù)的命令, crond(crontab)是系統(tǒng)默認(rèn)自帶的定時服務(wù) 。我們可以通過編輯crontab文件來設(shè)置定時任務(wù),使系統(tǒng)可以自動按照設(shè)定的時間和頻率

    2024年02月06日
    瀏覽(38)
  • 【Linux】Linux中Crontab(定時任務(wù))命令詳解及使用教程

    【Linux】Linux中Crontab(定時任務(wù))命令詳解及使用教程

    Crontab介紹: Linux crontab是用來crontab命令常見于Unix和類Unix的操作系統(tǒng)之中,用于設(shè)置周期性被執(zhí)行的指令。該命令從標(biāo)準(zhǔn)輸入設(shè)備讀取指令,并將其存放于“crontab”文件中,以供之后讀取和執(zhí)行。該詞來源于希臘語 chronos(χρ?νο?),原意是時間。通常,crontab儲存的指令被守護(hù)

    2024年02月08日
    瀏覽(17)
  • Linux的定時任務(wù)--CronTab 命令詳解及使用教程

    Linux的定時任務(wù)--CronTab 命令詳解及使用教程

    Linux crontab 是用來定期執(zhí)行程序的命令。(Nginx 日志切割,數(shù)據(jù)庫備份等) 當(dāng)安裝完成操作系統(tǒng)之后,默認(rèn)便會啟動此任務(wù)調(diào)度命令。 crond 命令每分鐘會定期檢查是否有要執(zhí)行的工作,如果有要執(zhí)行的工作便會自動執(zhí)行該工作。 注意:新創(chuàng)建的 cron 任務(wù),不會馬上執(zhí)行,至

    2024年02月16日
    瀏覽(25)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包