1。 時間加減
這裡處理方法,是將基礎的時間轉變為時間戳,然後,需要增加或者改變時間,變成 秒。
如:1990-01-01 01:01:01 加上 1小時 20分
處理方法:
a.將基礎時間轉為時間戳
time1=$(date +%s -d '1990-01-01 01:01:01')
echo $time1
631126861 【時間戳】
b.將增加時間變成秒
[root@localhost ~]# time2=$((1*60*60+20*60))
[root@localhost ~]# echo $time2
c.兩個時間相加,計算出結果時間
time1=$(($time1+$time2))
time1=$(date +%y-%m-%d/ %h:%m:%s -d "1970-01-01 utc $time1 seconds");
echo $time1
1990-01-01 02:21:01
2。時間差計算方法
如:2010-01-02 與 2010-01-01 00:00:00 時間差
原理:同樣轉成時間戳,然後計算天,時,分,秒
[root@fs ~]# echo $(($(date +%s -d '2010-01-02') - $(date +%s -d '2010-01-01 00:00:00')));
86400
將time1 / 3600 秒,就變成小時了。
[root@fs ~]# echo $((
$(($(date +%s -d '2010-01-02') - $(date +%s -d '2010-01-01 00:00:00')))/3600))
24再除24,變成天了。
[root@fs ~]# echo $(($(($(date +%s -d '2010-01-02') - $(date +%s -d '2010-01-01 00:00:00')))/3600/24))
1補充說明:
shell 單括號運算符號:
a=$(date);
等同於:a=`date`;
雙括號運算子:
a=$((1+2));
echo $a;
等同於:
a=`expr 1 + 2`
linux shell 時間運算以及時間差計算方法
最近一段時間,在處理shell 指令碼時候,遇到時間的處理問題。時間的加減,以及時間差的計算。1。時間加減 這裡處理方法,是將基礎的時間轉變為時間戳,然後,需要增加或者改變時間,變成 秒。如 1990 01 01 01 01 01 加上 1小時 20分 處理方法 a.將基礎時間轉為時間戳 time1...
linux shell 時間運算以及時間差計算方法
1。時間加減 這裡處理方法,是將基礎的時間轉變為時間戳,然後,需要增加或者改變時間,變成 秒。如 1990 01 01 01 01 01 加上 1小時 20分 處理方法 a.將基礎時間轉為時間戳 time1 date s d 1990 01 01 01 01 01 echo time1 631126...
linux shell 時間運算以及時間差計算方法
最近一段時間,在處理shell 指令碼時候,遇到時間的處理問題。時間的加減,以及時間差的計算。1。時間加減 這裡處理方法,是將基礎的時間轉變為時間戳,然後,需要增加或者改變時間,變成 秒。如 1990 01 01 01 01 01 加上 1小時 20分 處理方法 a.將基礎時間轉為時間戳 time1...