coyote/gp-scripts/snaplock-time.sh

31 lines
875 B
Bash

#!/usr/bin/env bash
# 1970-01-01 00:00:00 equals to 2038-01-19 03:14:08
# snaplock ends 2002-12-31 23:59:59 which is 2071-01-19 03:14:07
SNAPLOCK_UPPER="2038-01-19 03:14:08"
SNAPLOCK_UPPER_EPOCH=$(date --utc --date="${SNAPLOCK_UPPER}" +%s)
SNAPLOCK_LOWER="2002-12-31 23:59:59"
SNAPLOCK_LOWER_EPOCH=$(date --utc --date="${SNAPLOCK_LOWER}" +%s)
if [[ "${@}" == "" ]]; then
echo "Please specify a date to convert"
exit 1
fi
DATE="$@"
if ! DATE_EPOCH=$(date --utc --date="${DATE}" +%s); then
echo "Could not convert \"${DATE}\""
exit 1
fi
if [ ${DATE_EPOCH} -ge ${SNAPLOCK_UPPER_EPOCH} ]; then
SNAPLOCK_DATE_EPOCH=$((DATE_EPOCH-SNAPLOCK_UPPER_EPOCH))
elif [ ${DATE_EPOCH} -le ${SNAPLOCK_LOWER_EPOCH} ]; then
SNAPLOCK_DATE_EPOCH=$((DATE_EPOCH+SNAPLOCK_UPPER_EPOCH))
else
SNAPLOCK_DATE_EPOCH="${DATE_EPOCH}"
fi
date --utc --date="@${SNAPLOCK_DATE_EPOCH}"