# HG changeset patch # User Heiko Schlittermann (JUMPER) # Date 1400751728 -7200 # Node ID 431b272b8ab411b66217d8f79b80819946e5ee94 initial diff -r 000000000000 -r 431b272b8ab4 amdue --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/amdue Thu May 22 11:42:08 2014 +0200 @@ -0,0 +1,48 @@ +#! /bin/bash + +set -e +export LC_ALL=C + +SET_DAILY='DailySet1' +SET_WEEKLY='WeeklySet1' +SET_MONTHLY='MonthlySet1' + +tmp=$(getopt -n $0 -o h -l help -- "$@") +eval set -- "$tmp" + +while : +do + o="$1"; shift + case "$o" in + -h|--help) echo "Usage: $0 [when [schedule]]" + exit 0 + ;; + --) break + ;; + esac +done + + +when="${1-now}" +schedule="${2}" + +MONTHLY=Tuesday +WEEKLY=Saturday + + +schedule() { + if [[ $(date +%A -d "$when") = $MONTHLY && $(date +%m) != $(date +%m -d "$when - 1 week") ]] + then echo $SET_MONTHLY + elif [[ $(date +%A -d "$when") = $WEEKLY ]] + then echo $SET_WEEKLY + else echo $SET_DAILY + fi +} + +if test -z "$schedule" +then + schedule + exit 0 +fi + +test `schedule` = $schedule