sed


IP-Adressen ändern
in mehreren Dateien

 

Das Ändern von IP-Adresssen in diversen Konfigurationsdateien kann mitunter zu nicht unbeträchtlicher Fleißarbeit führen – daher habe ich nach einer Möglichkeit gesucht mit der ich die IP-Adressen automatisch korrigieren kann.

Mit diesem kleinen Skript kann man zum Beispiel direkt alle IP-Adressen innerhalb der Apache-Konfiguration verändern. Natürlich könnte man das Skript auch direkt auf alle Dateien in /etc anwenden, das erschien mir aber erstmal unnötig.

#!/bin/bash
IP_NEW="10.0.0.2"
IP_OLD="10.0.2.1"

for DATEI in $(grep $IP_OLD /etc/apache2/sites-enabled/* |cut -d : -f 1); do
DAT_TMP=$DATEI"_tmp"
sed -u 's/'"$IP_OLD"'/'"$IP_NEW"'/' $DATEI > $DAT_TMP
cp -f $DAT_TMP $DATEI
rm $DAT_TMP
echo $DATEI
done