I wanted an script that only checked the hours and minutes so I could run the script with the same parameters every day. I don't want to worry about which day will be tomorrow. So I used a different approach.
target="$1.$2"
cur=$(date '+%H.%M')
while test $target != $cur; do
sleep 59
cur=$(date '+%H.%M')
done
the parameters to the script are the hours and minutes, so I can write something like:
til 7 45 && mplayer song.ogg
(til is the name of the script)
no more days late at work cause you mistyped the day. cheers!