新聞中心
隨著計算機技術的不斷發(fā)展和普及,越來越多的人開始了解和使用Linux操作系統(tǒng)。Linux是一種開源操作系統(tǒng),由于其高度的自由度和定制能力,越來越多的人將它作為選擇的操作系統(tǒng)。在Linux系統(tǒng)中,用戶可以利用定時功能實現(xiàn)定時執(zhí)行計劃任務的需求,從而提高系統(tǒng)的效率和穩(wěn)定性。本文將介紹如何利用Linux的定時功能,在凌晨3點自動執(zhí)行計劃任務。

10年積累的成都網(wǎng)站制作、成都網(wǎng)站設計經(jīng)驗,可以快速應對客戶對網(wǎng)站的新想法和需求。提供各種問題對應的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡服務。我雖然不認識你,你也不認識我。但先網(wǎng)站設計制作后付款的網(wǎng)站建設流程,更有城東免費網(wǎng)站建設讓你可以放心的選擇與我們合作。
一、什么是定時功能
在Linux系統(tǒng)中,可以使用cron來實現(xiàn)定時功能。cron是一個任務調(diào)度程序,它可以在某個特定時間內(nèi)執(zhí)行特定的命令或者腳本。常見的情況是將cron用于執(zhí)行需要定期執(zhí)行的系統(tǒng)維護任務,諸如備份重要數(shù)據(jù),日志清理等等。
二、如何使用cron進行定時任務
1.編輯運行任務的用戶的cron配置
在Linux系統(tǒng)中,每個用戶都有一個自己的cron配置文件,文件保存在/var/spool/cron/crontabs目錄下。一般情況下,以root用戶運行的任務的任務計劃也要放到/var/spool/cron/crontabs下root這個用戶的cron配置文件里。我們可以使用“crontab -e”命令來編輯用戶的cron配置文件。如果用戶不存在cron配置文件,系統(tǒng)會自動創(chuàng)建一個。
2.編輯cron配置文件
編輯cron配置文件需要在命令行下輸入“crontab -e”命令。cron配置文件的每一行代表一個任務,格式如下:
分鐘 小時 日 月 周 命令
下面是各字段的含義:
分鐘:表示每小時的第幾分鐘,取值范圍為0-59。
小時:表示每天的第幾個小時,取值范圍為0-23。
日:表示每月的第幾天,取值范圍為1-31。
月:表示每年的第幾個月,取值范圍為1-12。
周:表示每周的星期幾,取值范圍為0-7,其中0和7都代表星期天。
命令:要執(zhí)行的命令。
下面是一個示例:
0 3 * * * /bin/sh /opt/test.sh
上面的例子表示,每天凌晨3點執(zhí)行/opt/test.sh這個腳本文件。
3.保存cron配置文件
完成編輯后,使用Ctrl + X鍵退出編輯模式,保存并退出。
4.定時任務的記錄和執(zhí)行日志
cron會將執(zhí)行日志記錄在/var/log/cron文件中,可以使用命令查看執(zhí)行記錄。
三、凌晨3點自動執(zhí)行計劃任務實戰(zhàn)
下面以一個實例說明如何在凌晨3點自動執(zhí)行計劃任務。假設我們需要每天凌晨3點自動備份/opt/data目錄下的文件,可以按照以下步驟來實現(xiàn)。
1.創(chuàng)建備份腳本
將以下代碼保存為/opt/back_up目錄下的back_up.sh文件。
#!/bin/bash
#自動備份/data目錄下的文件,并將備份文件保存至/backup目錄下。
DATE=$(date +%Y%m%d%H%M%S)
SRC_DIR=”/data”
DST_DIR=”/backup”
cd $SRC_DIR
tar -zcvf $DST_DIR/$DATE.tar.gz ./*
2.配置crontab任務
使用”crontab -e”命令打開cron配置文件,并在文件的末尾添加以下一行。
0 3 * * * /bin/sh /opt/back_up/back_up.sh
使用Esc鍵退出編輯模式,輸入:wq保存并退出。
3.查看執(zhí)行結果
到了凌晨3點左右可以查看是否已經(jīng)執(zhí)行備份任務,并到/backup目錄下查看是否生成了備份文件。
4.常見問題
如果發(fā)現(xiàn)cron任務沒有按照預期執(zhí)行,可以逐一排查以下原因:
1)crontab配置文件的路徑是否正確。
2)配置文件的格式是否正確。
3)是否使用了正確的用戶進行配置。
4)是否將文件保存在正確的位置。
5)命令或腳本執(zhí)行時是否缺少執(zhí)行權限。
6)執(zhí)行命令是否正確。
7)任務是否已經(jīng)在cron中注冊成功。
以上就是的相關介紹。通過這個方法,我們可以在Linux系統(tǒng)中實現(xiàn)定時任務的需求,從而提高系統(tǒng)的效率和穩(wěn)定性。希望本文對各位讀者在Linux操作系統(tǒng)上進行定時任務的管理有所幫助。
相關問題拓展閱讀:
- 如何在LINUX下實現(xiàn)定時執(zhí)行某個程序
- linux中怎么讓一個shell腳本分別在凌晨00點和中午12點運行一次
如何在LINUX下實現(xiàn)定時執(zhí)行某個程序
你可巧遲灶以通過編寫一個 SHELL 腳本程序(在編程過程孝扮旦睜中會用到 Linux 系統(tǒng)的 at 命令),就可以實現(xiàn)在指定的時間執(zhí)行指定的任務。
crontab-操作每個用戶的守護程序和該執(zhí)行的時間表。
部分參數(shù)說明
crontab file -用指定的文件替代目前的crontab。
crontab–用標準輸入滑胡替代目前的crontab.
crontab-1-列出用戶目前的crontab.
crontab-e-編輯用戶目和讓悉前的crontab.
crontab-d-刪除喚乎用戶目前的crontab.
crontab-c dir- 指定crontab的目錄。
crontab文件的格式:M H D m d cmd.
M: 分鐘(0-59)。
H:小時(0-23)。
D:天(1-31)。
m: 月(1-12)。
d: 一星期內(nèi)的天(0~6,0為星期天)。
cmd要運行的程序,程序被送入sh執(zhí)行,這個shell只有USER,HOME,SHELL這三個環(huán)境變量。
下面是一個例子文件:
#MIN HOUR DAY MONTH DAYOFWEEK COMMAND
#每天早上6點
106* * * date
#每兩個小時
0*/2* * * date
#晚上11點到早上8點之間每兩個小時,早上部點
0 23-7/2,8* * * date
#每個月的4號和每個禮拜的禮拜一到禮拜三的早上11點
0 11 4* mon-wed date
#1月份日早上4點
0 4 1 jan* date
范例
lark:~>crontab-1 列出用戶目前的crontab.
#MIN HOUR DAY MONTH DAYOFWEEK COMMAND
10 6* * * date
0*/2* * * date
linux中怎么讓一個shell腳本分別在凌晨00點和中午12點運行一次
linux中有
計劃帆辯埋任務服務
有經(jīng)驗的系統(tǒng)運維工程師能夠讓系統(tǒng)自動化運行,無需人工的干預就可以讓各個服務、命令在指定的時間段運行、停止。
了解計劃任務:
實際上這些操作都是由系統(tǒng)的計劃任務功能完成的,而計劃任務又有“一次性”與“長期性”之分,可以理解為:
一次性計劃任務:今晚11點30分開啟網(wǎng)態(tài)螞站服務(例如新網(wǎng)站的公測)
長期性計劃任務:每周1、3、5的凌晨3點25分將/home/wwwroot目錄打包備份為backup.tar.gz
先來講一次性任務吧,它是由atd服務/進程來實現(xiàn)的,計劃的管理操作是”at”命令,具體的可用參數(shù)如下:
參數(shù) 作用
at 安排一次性任務
atq或at -l 查看任務列表
at -c 序號 預覽任務與設置環(huán)境
atrm 序號灶手 刪除任務
一般用at命令創(chuàng)建計劃任務有交互式與非交互式兩種方法,先來看看交換式的方法,(輸完成后敲擊Ctrl+d來保存退出):
# at 23:30
at > systemctl start httpd
at >
job 3 at Mon Apr 27 23:30:
# atq
3 Mon Apr 27 23:30:a root
直接用echo語句將要執(zhí)行的命令傳送給at命令:
# echo “systemctl start httpd” | at 23:30
job 4 at Mon Apr 27 23:30:
# atq
3 Mon Apr 27 23:30:a root
4 Mon Apr 27 23:30:a root
刪除的時候只需要用atrm命令與任務編號就可以啦~
# atrm 3
# atrm 4
# atq
對于創(chuàng)建長期可循環(huán)的計劃任務,則要用到cron服務啦,具體使用方法如下:
創(chuàng)建、編輯計劃任務:crontab -e
查看計劃任務:crontab -l
刪除計劃任務:crontab -r
其中在創(chuàng)建、編輯計劃任務時有個固定的格式,請讀者們一定要記住。
字段 說明
分鐘 取值為從0到59之間的整數(shù)
小時 取值為從0到23之間的任意整數(shù)
日期 取值為1到31之間的任意整數(shù)
月份 取值為1到12之間的任意整數(shù)
星期 取值為0到7之間的任意整數(shù),其中0與7均為星期日
命令 要執(zhí)行的命令或程序腳本
需要用cron計劃任務實現(xiàn)的功能:”每周1、3、5的凌晨3點25分將/home/wwwroot目錄打包備份為backup.tar.gz”
編輯root用戶自己的計劃任務:
# crontab -e
no crontab for root – using an empty one
crontab: installing new crontab
使用”crontab -l”命令查看計劃任務的內(nèi)容:
# crontab -l
25 3 * * 1,3,5 /usr/bin/tar -czvf backup.tar.gz /home/wwwroot
如果想對某個用戶設置多個計劃任務,則可直接用”crontab -e”命令將命令逐條添加即可,讓計劃任務自動在每周1-5的凌晨1點打包網(wǎng)站目錄后自動清除/tmp目錄下的所有文件::
# crontab -e
crontab: installing new crontab
# crontab -l
25 3 * * 1,3,5 /usr/bin/tar -czvf backup.tar.gz /home/wwwroot
關于linux凌晨3點定時的介紹到此就結束了,不知道你從中找到你需要的信息了嗎 ?如果你還想了解更多這方面的信息,記得收藏關注本站。
創(chuàng)新互聯(lián)服務器托管擁有成都T3+級標準機房資源,具備完善的安防設施、三線及BGP網(wǎng)絡接入帶寬達10T,機柜接入千兆交換機,能夠有效保證服務器托管業(yè)務安全、可靠、穩(wěn)定、高效運行;創(chuàng)新互聯(lián)專注于成都服務器托管租用十余年,得到成都等地區(qū)行業(yè)客戶的一致認可。
新聞標題:利用Linux的定時功能,凌晨3點自動執(zhí)行計劃任務(linux凌晨3點定時)
標題來源:http://www.dlmjj.cn/article/dhicceh.html


咨詢
建站咨詢
