Script per incrementare il Serial in un file di zona bind
Jump to navigation
Jump to search
Questo script permette di incrementare automaticamente il serial in un file di zona di bind.
- Per funzionare, il Serial deve essere inserito su una riga come:
2006121300 ; serial
- Script:
#!/bin/bash # VALIDATE USAGE if [ -z "$1" ] then echo "Usage: increment zonefile" exit 1 fi # ENSURE FILE EXISTS if [ -f "$1" ] then # GET THE FILE'S CURRENT SERIAL DATE OLD=`egrep "20[0-9]*.*serial" $1 | awk '{print $1}' | cut -c1-8` DATE=`date +%Y%m%d` # SERIAL WAS CHANGED TODAY. JUST INCREMENT if [ $OLD -eq $DATE ] then TMP=`egrep "20[0-9]*.*serial" $1 | awk '{print $1}'` NEW=$(($TMP + 1)) /usr/local/bin/sed -i "s/$TMP/$NEW/g" $1 echo "Replaced: $TMP with $NEW" # SERIAL NOT CHANGED TODAY, UPDATE DATE AND ADD 00 else TMP=`egrep "20[0-9]*.*serial" $1 | awk '{print $1}'` /usr/local/bin/sed -i "s/$TMP/"$DATE"00/g" $1 echo "Replaced: $TMP with "$DATE"00" fi fi exit 0