1. 程式人生 > 其它 >shell指令碼常用的時間轉換

shell指令碼常用的時間轉換

  • 獲取當前時間

date_time=`date +"%Y%m%d%H%M"`
//擷取想要的時間
date_d=${date_time:0:8}
date_H=${date_time:8:2}
date_M=${date_time:10:2}

  • 5分鐘之前

date_5_ago=`date -d "${date_d} ${date_H}:${date_M} 5 minute ago" +"%Y%m%d%H%M"` //計算已知時間的前XX分鐘

  • 將時間轉換為時間戳

time1=`date -d "$date_5_ago" +%s `
time2=`date -d "$date_time" +%s`

  • 時間戳相減

time=$(($time1 - $time2))

  • 將時間戳轉換為分鐘

time_c=`date -d @$time "+%M"`

  • 計算執行時間

starttime=`date +'%Y-%m-%d %H:%M:%S'`

//執行程式碼

endtime=`date +'%Y-%m-%d %H:%M:%S'`
start_seconds=$(date --date="$starttime" +%s)
end_seconds=$(date --date="$endtime" +%s)
echo "本次執行時間: "$((end_seconds-start_seconds))"s"