Script Bash commande sed non prise en compte
Bonjour,
J'essaye d'automatiser une installation de serveur via un script, dont la partie network
J'ai un souci avec le fichier /etc/hosts qui ressemble à ça
Code:
1 2 3 4
| # Do not remove the following line, or various programs
# that require network functionality will fail.
127.0.0.1 localhost localhost.localdomain localhost
192.168.8.1 gateway |
J'essaye de remplacer le 1er champ 'localhost' par la variable $hname qui est dans mon script ci-dessous
quand je teste ces deux commandes sed à la main
sed '3 s/[^ ]*/\tmafalda/2' /etc/hosts --> remplace bien le 1er champ 'localhost' par mafalda, quand j'intégre ça dans mon script y a rien qui se passe
sed -e 's/\<localhost\>//1' /etc/hosts --> supprime bien le champ localhost et idem en l’intégrant ça ne fais aucune modif
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| [root@mafalda ~]# cat network_scripts.sh
# Configurer le fichier /etc/hosts
echo ""
echo "#######################################"
echo "# Merci de renseigner le hostname ! #"
echo "#######################################"
read -p "# HOSTNAME: " hname
sed -i '/HOSTNAME/d' /etc/sysconfig/network
sed -e 's/\<localhost\>//1' /etc/hosts
sed '3 s/[^ ]*/\t$hname/2' /etc/hosts
sed -i '/::1/d' /etc/hosts
sleep 1
echo ""
ifconfig
echo ""
echo "#################################################################"
echo "# Merci de renseigner l'adresse IP ! #"
echo "# Le resultat de ifconfig ci-dessus peut sans doute vous aider. #"
echo "#################################################################"
read -p "# ADRESSE IP: " adip
echo -e "$adip\t$hname.mafalda.com $hname" >> /etc/hosts
sed -i '/DHCPCLASS/d' /etc/sysconfig/network-scripts/ifcfg-eth0 |
Merci pour votre aide ;)