#!/bin/bash function echotime () { TIMEUSED="$1" if ((TIMEUSED > 86400 ));then DAYSUSED=$((TIMEUSED / 86400)) HOURSUSED=$((TIMEUSED/3600-DAYSUSED*24)) MINUTESUSED=$((TIMEUSED/60-HOURSUSED*60-DAYSUSED*60*24)) SECONDSUSED=$((TIMEUSED-MINUTESUSED*60-HOURSUSED*3600-DAYSUSED*3600*24)) OUTPUT="$DAYSUSED d $HOURSUSED h $MINUTESUSED m $SECONDSUSED s" elif ((TIMEUSED < 60 ));then OUTPUT="$TIMEUSED s" elif ((TIMEUSED < 3600));then MINUTESUSED=$((TIMEUSED/60)) SECONDSUSED=$((TIMEUSED-MINUTESUSED*60)) OUTPUT="$MINUTESUSED m $SECONDSUSED s" elif ((TIMEUSED < 86400));then HOURSUSED=$((TIMEUSED/3600)) MINUTESUSED=$((TIMEUSED/60-HOURSUSED*60)) SECONDSUSED=$((TIMEUSED-MINUTESUSED*60-HOURSUSED*3600)) OUTPUT="$HOURSUSED h $MINUTESUSED m $SECONDSUSED s" fi echo "$OUTPUT" } NEWYEAR="$(date -d '01 jan 2006 00:00 CET' +%s)" while usleep 200; do ACTUALTIME="$(date +%s)" REMAIN=$((NEWYEAR - ACTUALTIME)) REMAINHUMAN="$(echotime "$REMAIN")" printf "New year countdown: %s \r" "$REMAINHUMAN" done