Для того, щоб визначити дату народження по ІПН нам достатньо знати ІПН або тількі перші п’ять цифр.
Команда date в Linux працює з датами тількі з 01 янв 1902, тому треба додати трошки шаманства.
1900 – високосний рік в MS Excel хоча й невисокосний за офіційним календарем.
1901 – невисокосний рік.
Отже треба використати магію 🙂 (MAGIC)
#!/bin/bash
MAGIC=$(( 365+1+365 ))
echo "Введіть ІПН або перші п’ять цифр:"
read INPUT
#INN=`echo $INPUT | cut -c1-5`
INN=`echo $INPUT | grep -Eo '^.{5}'`
#DATE=$( date --date "1902-01-01 + $(( $INN - $MAGIC )) days" +%F )
DATE=$( date --date "1902-01-01 + $(( $INN - $MAGIC )) days" +%d-%m-%Y )
echo $DATE
Ідею взято тут