days_between() {
local d1 d2
d1=$(date -d "$1" +%s)
d2=$(date -d "$2" +%s)
echo $(( (d2 - d1) / 86400 ))
}
days_between "2025-01-01" "2025-03-15" # 73
days_between "2025-03-15" "2025-01-01" # -73 (direction matters)
# Hours between (rounded down)
hours_between() {
echo $(( ($(date -d "$2" +%s) - $(date -d "$1" +%s)) / 3600 ))
}
hours_between "2025-03-15 09:00" "2025-03-15 17:30" # 8
Create a free account and build your private vault. Share publicly whenever you want.