寫了個腳本簽到,但是不想總是在確定的時間簽到,不然在數據庫里面的記錄太假了,所以需要在確定的時間段內,隨機選個時間執行,最后想到了使用Cron+AT實現
思路很簡單,就是cron設置一個起始時間,比如每天早上6點,在這個時間往后隨機的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
之所以前面還加了隨機1-60秒的sleep 是因為 at是整點執行,不想讓數據庫內只有整分鐘點的簽到記錄。
這個比直接在cron里面sleep的方法,節約不少資源,sleep最長駐留時間不超過60秒
為了保持cron里面的簡潔,可以再包裝一個腳本
新聞熱點
疑難解答
圖片精選