Timefunctions

#!/bin/bash // Umwandeln von Zeiteinheiten

#############################################################
## CONVERT TIMESTAMP TO DATE NAD TIME
#############################################################
function stamp2time () { 
  date --utc --date "$1" "+%Y-%m-%d %H:%M:%S"
}
#############################################################
## CONVERT TIME TO UTC TIME
#############################################################
function date2utc () {
  date --utc --date "$1" +%s
}
#############################################################
## CONVERT TIME TO BE LOG CONFORM
#############################################################
function stamp2log () {
  date --utc --date "1970-01-01 $1 sec" "+%Y-%m-%d %T"
}
#############################################################
## TME - 60 SECONDS
#############################################################
function java_time2minbehind () { 
  date --utc --date "$1 sec -60sec" "+%b %e %H:%M"
}
#############################################################
## TIME - 2 MONTHS AGO
#############################################################
function time2monthsbehind () {
  date --utc --date "-2 month" "+%Y-%m-%d %H:%M:%S"
}
#############################################################
## CALCULATE AN INTAGER BETWEEN 2 TIMESTAMPS
#############################################################
function date_diff () {
  case $1 in 
    -s)   sec=1;      shift;;
    -m)   sec=60;     shift;;
    -h)   sec=3600;   shift;;
    -d)   sec=86400;  shift;;
    *)    sec=86400;;
    esac

    DATE1=$( date2stamp $1 )
    DATE2=$( date2stamp $2 )
    DIFF_SEC=$(( DATE2 - DATE1 ))

    echo $(( DIFF_SEC / sec ))
}