case "$(uname -s)" in Linux) date_to_epochdays() { [ "${1}" ] || return 1 echo $(( $(date +%s -d "${1}") / 86400 )) } epochdays_to_date() { [ "${1}" ] || return 1 date -d "1970-01-01 $(( ${1} * 86400 )) sec" +%Y-%m-%d } ;; FreeBSD) date_to_epochdays() { [ "${1}" ] || return 1 echo $(( $(date -j -f %Y-%m-%d "%{1}" +%s) / 86400 )) } epochdays_to_date() { [ "${1}" ] || return 1 date -jr $(( ${1} * 86400 )) +%Y-%m-%d } ;; esac