Solution 1 :
Je préfère ne pas toucher /etc/hosts en termes d'analyse et autres. Je créerais simplement un répertoire appelé /etc/hosts.d/ et inventez un script qui prend :
- ip
- nom
- alias
crée un (1) fichier avec une (1) ligne. Le nom du fichier sera <ip>.host puis cat /etc/hosts.d/*host > /tmp/hosts.new && mv /tmp/hosts.new /etc/hosts . Peut-être ajouter un incron événement qui regarde le /etc/hosts.d/ répertoire et régénère /etc/hosts chaque fois que quelque chose se passe, vous vous débarrasserez également des anciennes entrées.
Solution 2 :
Jetez un oeil à augeas. Il dispose d'un analyseur/sérialiseur prêt à l'emploi pour le fichier hosts (c'est même dans leur guide de visite rapide) et est livré avec un outil simple pour apporter des modifications (augtool).