Linux使用Cron+AT實(shí)現(xiàn)在某個(gè)確定的時(shí)間段內(nèi)隨機(jī)執(zhí)行命令
寫了個(gè)腳本簽到,但是不想總是在確定的時(shí)間簽到,不然在數(shù)據(jù)庫里面的記錄太假了,所以需要在確定的時(shí)間段內(nèi),隨機(jī)選個(gè)時(shí)間執(zhí)行,最后想到了使用Cron+AT實(shí)現(xiàn)
思路很簡單,就是cron設(shè)置一個(gè)起始時(shí)間,比如每天早上6點(diǎn),在這個(gè)時(shí)間往后隨機(jī)的2~350分鐘里面去簽到
那么只要這樣
0 6 * * * echo 'sleep ' $(shuf -i 1-60 -n 1)';date >>/tmp/xxxx.txt' |at now + $(shuf -i 2-350 -n 1) min
之所以前面還加了隨機(jī)1-60秒的sleep 是因?yàn)?at是整點(diǎn)執(zhí)行,不想讓數(shù)據(jù)庫內(nèi)只有整分鐘點(diǎn)的簽到記錄。
這個(gè)比直接在cron里面sleep的方法,節(jié)約不少資源,sleep最長駐留時(shí)間不超過60秒
為了保持cron里面的簡潔,可以再包裝一個(gè)腳本
相關(guān)文章
ubuntu下kvm 命令行安裝64位ubuntu報(bào)"Couldn''t find hvm kernel for Ubu
這篇文章主要介紹了ubuntu下kvm 命令行安裝64位ubuntu報(bào)"Couldn't find hvm kernel for Ubuntu tree."的問題分析的相關(guān)資料,需要的朋友可以參考下2016-11-11Linux實(shí)現(xiàn)自動掛載autofs的方法詳解
這篇文章主要介紹了Linux實(shí)現(xiàn)自動掛載autofs的相關(guān)資料。autofs 服務(wù)將實(shí)現(xiàn)自動掛載外圍設(shè)備,NFS共享目錄等,并在空閑5分鐘后后自動卸載,需要的可以參考一下2022-10-10Linux如何關(guān)閉遠(yuǎn)程ssh密碼登錄
這篇文章主要介紹了Linux如何關(guān)閉遠(yuǎn)程ssh密碼登錄問題,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-08-08詳解Linux用戶態(tài)與內(nèi)核態(tài)通信的幾種方式
這篇文章主要介紹了詳解Linux用戶態(tài)與內(nèi)核態(tài)通信的幾種方式,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2019-06-06