diff --git a/birthdays.sh b/birthdays.sh index d767ba1..ccb2f2e 100755 --- a/birthdays.sh +++ b/birthdays.sh @@ -4,9 +4,10 @@ conf_file=$HOME/birthdays days_left=30 -# functions to get days to birthday -function days_left { - birthday=$(date -d "$1" +%j 2>/dev/null | sed 's/^0*//') +readarray lines < "$conf_file" + +for i in "${lines[@]}"; do + birthday=$(date -d "$( cut -f 1 <<< "$i" )" +%j 2>/dev/null | sed 's/^0*//') today=$(date +%j 2>/dev/null | sed 's/^0*//') days=$(( ${birthday} - ${today} )) if [ 0 -le "$days" ] && [ "$days" -le "$days_left" ];then @@ -19,9 +20,4 @@ function days_left { fi fi -} -readarray lines < "$conf_file" - -for i in "${lines[@]}"; do - days_left "$( cut -f 1 <<< "$i" )" done