#!/bin/bash if [[ $# -lt 3 ]]; then echo "Usage: getdt (format)" return -1 fi from_date=$1 to_date=$2 format="%02d days, %02d:%02d:%02d" if [[ $# -gt 3 ]]; then format=$3 fi target_epoch=$(date -d "$from_date" +%s) now_epoch=$(date -d "$to_date" +%s) remaining_seconds=$((target_epoch - now_epoch)) days=$((remaining_seconds / 86400)) hours=$(((remaining_seconds % 86400) / 3600)) minutes=$(((remaining_seconds % 3600) / 60)) seconds=$((remaining_seconds % 60)) printf "%02d days, %02d:%02d:%02d" $days $hours $minutes $seconds