Ich verwende Docker, bei dem der Container seine eigene /etc/hosts-Datei hat. Diese wird beim Neustart gelöscht. Ich möchte ein Skript erstellen, das nach einem Eintrag sucht und ihn bei Fehlen hinzufügt.
Wenn also /etc/hosts einen Eintrag hat, der besagt:
10.1.1.1 important-server
Dann tun Sie nichts. Wenn nicht, tun Sie Folgendes:
echo "10.1.1.1 important-server" >> /etc/hosts
Ich gehe davon aus, dass ich für die Musterübereinstimmung „ sed
oder “ oder so etwas verwenden kann .awk
Antwort1
Wie gesagt vonRinzwindin Kommentaren:
Sie sollten
--add-host="import-server:10.1.1.1"
es dem Docker-Run-Befehl ODER der Datei docker-compose.yml hinzufügen, wenn Sie Docker-Compose verwenden.
Oder in der Shell:
sudo -s
grep -Pq '^10\.1\.1\.1\s+important-server' /etc/hosts ||
echo '10.1.1.1 important-server' >> /etc/hosts
exit