Всем привет!
Понадобилось вот составить скриптик, который вычисляет возраст по дате рождения. Написать-то я его написал, теперь интересует, можно ли реализовать его не так громоздко, и правильно ли он оформлен с точки зрения правил написания скриптов?
Буду рад конструктивной критике. Код:
#!/bin/bash
echo "Введите день рождения."
echo "Если вы родились, например, 2 числа - нужно вводить 2, а не 02"
read day
echo "Введите месяц рождения."
echo "Если вы родились, например, в марте - нужно вводить 3, а не 03"
read month
echo "Введите год рождения в формает XXXX"
read year
echo "Ваша дата рождения:" $day.$month.$year
today_day=`date +%-d`
today_month=`date +%-m`
today_year=`date +%Y`
#вычисление разницы
let "day_diff = today_day - day"
let "month_diff = today_month - month"
let "year_diff = today_year - year"
if [ $day_diff -ge 0 ] & [ $month_diff -ge 0 ] ;
then
echo "Ваш возраст:" $year_diff
else
#В этом случае у человека День Рождения в этом году еще на настал - разница с $year_diff в 1 год.
let "no_birthday = year_diff - 1"; echo "Ваш возраст:" $no_birthday
fi