Random Project

Updated to support a few other TLD’s

Adding a few lines to better parse the expiration date.. it’s a bit crude, but it’s works

######
#! /bin/bash

if [ $# -ne 1 ]
then
echo “Usage: $0 [domain name]”
exit 1
fi

getDate=`jwhois $1 | grep Expir`

FIRST_WORD=`echo $getDate | cut -d ” ” -f1`

case $FIRST_WORD in
Registrar) expireDate=`echo $getDate | cut -d ” ” -f5`;;
Registry) expireDate=`echo $getDate | cut -d ” ” -f4 | cut -d “T” -f1`;;
Domain) expireDate_1=`echo $getDate | tr -s | cut -d “:” -f2-22 | sed -e ‘s/S*(:)S*//g’ -e ‘s/ GMT //g’`
expireDate=`date -d “$expireDate_1” +%Y-%m-%d`;;
esac

currentDate=`date +%s`

expireDate=`date +%s –date=”$expireDate”`

### Difference between expiration and right now
timeDiffSec=`expr $expireDate – $currentDate`

### Convert to days (86400 seconds in a day)
timeDiffDays=`expr $timeDiffSec / 86400`

if [ $timeDiffDays -lt 15 ]
then
echo “CRITICAL: $timeDiffDays Left Until Domain Expiration”
exit 2
fi

if [ $timeDiffDays -lt 31 ]
then
echo “WARNING: $timeDiffDays Left Until Domain Expiration”
exit 1
fi

if [ $timeDiffDays -gt 30 ]
then
echo “OK: $timeDiffDays Left Until Domain Expiration”
exit 0
fi