Para o hostname -d , use hostname -f :
hostname -f | sed -e 's/^[^.]*\.//'
Para endereços IP, use ifconfig -a (procure os inet data). Sua máquina pode ter apenas um dispositivo de rede, en0 , então você poderia fazer apenas
ifconfig en0 |awk '/inet / {print $2; }'
Se você estiver interessado em todos os dispositivos de rede, lembre-se de que ifconfig -l lista os dispositivos. Isso lista os dispositivos e seus endereços correspondentes:
#!/bin/sh
for name in $(ifconfig -l)
do
ifconfig $name |awk -v name=$name '/inet / {printf "%s: %s\n", name, $2; }'
done
Leitura adicional: