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

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


咨詢
建站咨詢
