{eval=Array;=+count(Array);}

国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

問答專欄Q & A COLUMN

如何讓shell腳本每天定時(shí)執(zhí)行?

CoderDockCoderDock 回答0 收藏1
收藏問題

9條回答

Hancock_Xu

Hancock_Xu

回答于2022-06-27 17:10

這個(gè)非常簡單,crontab命令就可以輕松實(shí)現(xiàn),下面我簡單介紹一下操作過程:

1.首先,新建需要定時(shí)執(zhí)行的shell腳本,這里我為了方便說明問題,新建了一個(gè)打印當(dāng)前時(shí)間的腳本date.sh,內(nèi)容如下,非常簡單,就是一行date命令,然后將輸出重定向到一個(gè)date.txt文本中:

2.接著就是將這個(gè)date.sh腳本添加到定時(shí)任務(wù)中,直接運(yùn)行“crontab -e”命令添加就行,如下,這里先以每分鐘執(zhí)行一次腳本為例,看定時(shí)任務(wù)能否正常執(zhí)行,編輯“*/1 * * * * /root/date.sh”保存就行,如下:

至于這6個(gè)字段的含義,官方文檔有詳細(xì)說明,如下,分別代表分、時(shí)、天、月、星期和執(zhí)行的命令,網(wǎng)上介紹資料也非常豐富,感興趣的話,可以搜索一下:

3.最后,我們再查看一下輸出文件date.txt和crontab日志,如下,說明添加的定時(shí)任務(wù)已經(jīng)正常運(yùn)行,這里再替換成你每天定時(shí)執(zhí)行的時(shí)間,只需要修改第一、二個(gè)字段就行,例如,每天10:30執(zhí)行,則編輯“30 10 * * * /root/date.sh”保存就行:

至此,我們就完成了每天定時(shí)執(zhí)行shell腳本。總的來說,整個(gè)過程非常簡單,只要你有一定的Linux基礎(chǔ),熟悉一下crontab命令,很快就能掌握的,網(wǎng)上也有相關(guān)資料和教程,介紹的非常詳細(xì),感興趣的話,可以搜一下,希望以上分享的內(nèi)容能對你有所幫助吧,也歡迎大家評論、留言進(jìn)行補(bǔ)充。

評論0 贊同0
  •  加載中...
阿羅

阿羅

回答于2022-06-27 17:10

每天定時(shí)去執(zhí)行shell腳本,說明你已經(jīng)開始走向自動(dòng)化運(yùn)維之路了,再往后走就會(huì)開始制定標(biāo)準(zhǔn)化,有了標(biāo)準(zhǔn)化作為基礎(chǔ),可以繼續(xù)下一步,平臺(tái)化運(yùn)維,最后就是智能化運(yùn)維,回歸正題,如何讓shell腳本每天定時(shí)執(zhí)行,在這里,我提供2種方法

方法一:crontab

無論你的系統(tǒng)是aix還是linux,都可以使用crontab去定時(shí)執(zhí)行shell腳本,舉個(gè)例子

* * * * * . /monitor/

disk.sh

> /monitor/

disk.sh.log

2>&1,這樣配置,表示系統(tǒng)會(huì)每分鐘調(diào)用一次

disk.sh

腳本。在這里要重點(diǎn)說明一下“* * * * *”,每個(gè)星星代表的含義。

第一個(gè)*代表分鐘0~59

第二個(gè)*代表小時(shí)0~23(0表示子夜)

第三個(gè)*代表日1~31

第四個(gè)*代表月1~12

第五個(gè)*代表星期0~7(0和7表示星期天)

如果你想要

disk.sh

每天晚上22點(diǎn)30分執(zhí)行,可以修改成這樣

30 22 * * * . /monitor/disk.sh > /monitor/disk.sh.log 2>&1

方法二:Rundeck平臺(tái)

用Rundeck平臺(tái),可以規(guī)模化的去管理每臺(tái)主機(jī)的shell腳本的運(yùn)行,crontab最小時(shí)間單位是分鐘,而Rundeck平臺(tái)可以精確到秒。

Rundeck是一個(gè)基于Java和Grails的開源的運(yùn)維自動(dòng)化工具,提供了Web管理界面進(jìn)行操作,同時(shí)提供命令行工具和WebAPI的訪問控制方式。他象Ansible之類的工具一樣,Rundeck能夠幫助開發(fā)和運(yùn)維人員更好地管理各個(gè)節(jié)點(diǎn)。

總之,無論用crontab,還是用Rundeck平臺(tái),你的shell一定要標(biāo)準(zhǔn)化,不然后期會(huì)給你后期規(guī)模化運(yùn)維帶來很大的難度。

評論0 贊同0
  •  加載中...
jerryloveemily

jerryloveemily

回答于2022-06-27 17:10

crontab了解下,linux必學(xué)技能

評論0 贊同0
  •  加載中...
ssshooter

ssshooter

回答于2022-06-27 17:10

crontab可以讓shell腳本每天定時(shí)執(zhí)行,“crontab -e”進(jìn)入編輯頁面,“crontab -l ”查看當(dāng)前的定時(shí)任務(wù)。

比如每天00:00執(zhí)行腳本clean.sh:

0 0 * * * /bin/clean.sh

評論0 贊同0
  •  加載中...
Richard_Gao

Richard_Gao

回答于2022-06-27 17:10

linux系列的定時(shí)任務(wù)最簡單的辦法就是依賴系統(tǒng)提供的定時(shí)調(diào)度工具crontab

如何新建定時(shí)任務(wù)?

使用 crontab -e 命令,然后在打開的編輯器里新加一條記錄類似下面這樣的

前面的那段是時(shí)間相關(guān)的后面的是你要執(zhí)行的命令

crontab 表達(dá)式

從左往右按順序依次為

秒(0~59)----

分(0~59)

時(shí)(0~23)

日(0~31,但是你需要考慮你月的天數(shù))

月(0~11)

周(0~6 0=SUN 或 SUN,MON,TUE,WED,THU,F(xiàn)RI,SAT)

年(1970-2099)

其中每個(gè)元素可以是一個(gè)值(如6),一個(gè)連續(xù)區(qū)間(9-12),一個(gè)間隔時(shí)間(8-18/4)(/表示每隔4小時(shí)),一個(gè)列表(1,3,5),通配符。由于"月份中的日期"和"星期中的日期"這兩個(gè)元素互斥的,必須要對其中一個(gè)設(shè)置?.


篇幅有限,如果還是不會(huì),可以評論留言,我給你詳細(xì)解釋

評論0 贊同0
  •  加載中...
atinosun

atinosun

回答于2022-06-27 17:10

我自己的話是通過云幫手實(shí)現(xiàn)這一操作的,會(huì)比較方便一點(diǎn)。

首先是在服務(wù)器的管理面板里找到系統(tǒng)管理頁面,點(diǎn)擊計(jì)劃任務(wù),在下方點(diǎn)擊添加計(jì)劃任務(wù)

在計(jì)劃任務(wù)的類型里選擇shell腳本

然后就根據(jù)你自己的需求設(shè)定腳本名稱、執(zhí)行周期時(shí)間和上傳腳本內(nèi)容

設(shè)定完成后,回到操作列表點(diǎn)擊執(zhí)行就可以了

更多詳情你可以去他家官網(wǎng)地址看看:https://www.cloudx.cn/download?utm_source=zhan-wukong

評論0 贊同0
  •  加載中...
ThinkSNS

ThinkSNS

回答于2022-06-27 17:10

執(zhí)行什么命令?

如我們要執(zhí)行一個(gè)命令同步時(shí)間,通常我們使用ntpdate這個(gè)命令具體如下:

[root@mpkwiki ~]# ntpdate

ntp.sjtu.edu.cn

#執(zhí)行命令看看可行不

執(zhí)行命令的周期

* * * * * 這個(gè)五個(gè)星分別代表:分、時(shí)、天、月、星期。

而 */5 * * * * /usr/sbin/ntpdate 10.93.0.33 >/dev/null 2>&1 代表的意思是每5分鐘執(zhí)行一次時(shí)間同步任務(wù),并把結(jié)果輸出到/dev/null 下面去。

怎么才能執(zhí)行成功每天的計(jì)劃任務(wù)

Linux使用crontab來執(zhí)行每天的計(jì)劃任務(wù),在編寫計(jì)劃任務(wù)之前還是要確定你的命令是否能正常執(zhí)行。我一般會(huì)使用which ntpdate 得到這個(gè)絕對路徑下的命令。

接下來打開計(jì)劃任務(wù)寫下你命令代碼,使用crontab -e。

最后使用剛剛命令寫一個(gè)shell腳本備份一下MySQL數(shù)據(jù)庫。

1,新建腳本/scripts/

backup_db.sh

,最好是一看就能知道是干嘛的那種。

2,給這個(gè)文件夾chmod +x 賦權(quán)限。

3,編輯腳本內(nèi)容,大致如下;

#auto backup mysql

#tony 2019-03-01

#Define PATH

BAKDIR=/data/backup/mysql/`date +%Y-%m-%d`

MYSQLDB=database

MYSQLPW=Pa55w0rd

MYSQLUSR=root

#must use root user run scripts

if

[ $UID -ne 0 ];then

echo This script must use the root user ! ! !

sleep 2

exit 0

fi

#Define DIR and mkdir DIR

if

[ ! -d $BAKDIR ];then

mkdir -p $BAKDIR

else

echo This is $BAKDIR exists....

fi

#Use mysqldump backup mysql

/usr/bin/mysqldump -u$MYSQLUSR -p$MYSQLPW -B -F -R -x --master-data=2 $MYSQLDB|gzip >$BAKDIR/wikidatabase_db.sql.gz

echo "The mysql backup successfully "

4,執(zhí)行命令測試[root@mpkwiki scripts]# which mysqldump

5,在計(jì)劃任務(wù)里執(zhí)行每天夜里12:00備份數(shù)據(jù)庫

6,測試命令查詢結(jié)果。

評論0 贊同0
  •  加載中...
caspar

caspar

回答于2022-06-27 17:10

不是crontab么

評論0 贊同0
  •  加載中...
smartlion

smartlion

回答于2022-06-27 17:10

Jenkins也可以

評論0 贊同0
  •  加載中...

最新活動(dòng)

您已邀請0人回答 查看邀請

我的邀請列表

  • 擅長該話題
  • 回答過該話題
  • 我關(guān)注的人
向幫助了您的網(wǎng)友說句感謝的話吧!
付費(fèi)偷看金額在0.1-10元之間
<