#!/bin/bash OLD="2006-12-01 12:30" NEW="2006-12-04 12:43" TIME="$(((`date +%s -d "${NEW}"` - `date +%s -d "${OLD}"`)))" #SHOW SEC echo "$TIME secs" # if over 48 houers show as days if [[ "$(($TIME / 60 / 60 ))" -ge "48" ]] then #show Days SPLIT=$(bc << EOF scale=1 ($TIME / 60 / 60 / 24) EOF ) echo "$SPLIT Day(s) between old and new dato" # if under 2 days.. show as houers elif [[ "$(($TIME /60))" -ge "60" ]] && [[ "$(($TIME / 60/ 60))" -le "48" ]] then #show Houers SPLIT=$(bc << EOF scale = 2 ($TIME / 60 / 60) EOF ) echo "$SPLIT Houer(s) between old and new dato" # if less than 1 houer show as minutes elif [[ "$(($TIME /60))" -lt "60" ]] then #show minutes SPLIT=$(bc << EOF scale=1 ($TIME / 60) EOF ) echo "$SPLIT Minute(s) between old and new Dato" fi ####### without set -x 259980 secs 3.0 Day(s) between old and new dato ###### with set -x + OLD='2006-12-01 12:30' + NEW='2006-12-04 12:43' ++ date +%s -d '2006-12-04 12:43' ++ date +%s -d '2006-12-01 12:30' + TIME=259980 + echo '259980 secs' 259980 secs + [[ 72 -ge 48 ]] ++ bc + SPLIT=3.0 + echo '3.0 Day(s) between old and new dato' 3.0 Day(s) between old and new dato nuxil@Nuxil:~/Mine script/bash$