Bash scripting/Change hostname

From Mana zināšanu grāmata
 
#!/usr/bin/env bash
##Truncete machine-id

#truncate -s 0 /etc/machine-id
OLD_HOSTNAME="$( hostname )"
NEW_HOSTNAME="$1"
DOMAIN="zzdats.lv"
if [ -z "$NEW_HOSTNAME" ]; then
 echo -n "Please enter new hostname: "
 read NEW_HOSTNAME < /dev/tty
fi
if [ -z "$NEW_HOSTNAME" ]; then
 echo "Error: no hostname entered. Exiting."
 exit 1
fi
echo "Changing hostname from $OLD_HOSTNAME to $NEW_HOSTNAME..."
hostname "$NEW_HOSTNAME"
hostnamectl set-hostname "$NEW_HOSTNAME"
sed -i "s/127.0.1.1*.*/127.0.1.1 $NEW_HOSTNAME.$DOMAIN $NEW_HOSTNAME/g" /etc/hosts
echo "Done."