#!/bin/bash #checkfail.log 爲SHELL監控網站時間存放的日誌文件 https://blog.51cto.com/junhai/2437965 fail_time(){ starttime=`tail -n 1000 checkfail.log |grep "$url"|grep "第1次"|tail -n 3|head -n 1|awk '{print $1, $2}'` #取網站掛掉的時間 endtime=`tail -n 1000 checkfail.log |grep "$url"|grep "已恢復監控"|tail -n 1|awk '{print $1, $2}'` #取網站恢復的時間 startm=$(date --date="$starttime" +%M); endm=$(date --date="$endtime" +%M); starth=$(date --date="$starttime" +%H); endh=$(date --date="$endtime" +%H); startd=$(date --date="$starttime" +%d); endd=$(date --date="$endtime" +%d); echo "本次故障開始時間 $starttime" echo "本次故障結束時間 $endtime" day=$(($((10#$endd)) - $((10#$startd)))) hour=$(($((10#$endh)) - $((10#$starth)))) minute=$(($((10#$endm)) - $((10#$startm)))) total=$(($(($day * 24 * 60)) + $(($hour * 60 )) + $minute)) echo "本次故障持續時間: $((total / 60)) h $(($total % 60)) m" }
企業微信效果bash