J'ai un groupe de machines virtuelles que je déploie encore et encore dans un grand environnement de test automatisé. Après son déploiement, chaque machine virtuelle écrit son nom d’hôte sur /etc/hosts
.
127.0.0.1 XXXX-testbot-XXX
Quand il sera déployé, je veux remplacer "xxxx-testbot-xxxx" avec "aaaa-testbot-aaaa" .
En fait, en fonction du déploiement, le nom d’hôte peut même être DDDD-SSSS-EEE-testbot-XYXXY "
Je cherche quelque chose comme trouver mot avec "testbot" et remplacer par une nouvelle valeur
J'ai essayé ceci:
x="garn13-testbot-15"
sudo sed -i "s/\*\(testbot)*\).*/$x/g" /etc/hosts
Mais cela ne ferait que remplacer la correspondance de "testbot" elle-même:
Before:
127.0.1.1 garn13-testbot-12
After:
127.0.1.1 garn13-garn13-testbot-15