#!/bin/bash set -euo pipefail source ${HOME}/bin/script_framework.sh time=${1:-} [ -z "${time}" ] && fail "No time specified" tdiff=$(($(date -d "$1" +%s) - $(date +%s))) [ $tdiff -gt 0 ] || tdiff=$((tdiff + 86400)) step "Sleeping ${tdiff}s until $(date -d "now + ${tdiff} seconds" "+%Y-%m-%d %H:%M:%S")..." sleep ${tdiff}