bash-script switched in /etc/hosts IPs um

#!/bin/bash
Befehl ()
{
echo Usage: `basename $0`“ hostname k|w ….“ 1>&2
exit 1
}
# Du hast 2 IPs für 1 Host in /etc/hosts #k = kabel #w = wlan
# habe /etc/hosts-head siehe
# http://winhelp2002.mvps.org hosts.htm
# example: hosts-switcher.sh scaleo k
# switch the scaleo to the kabel #k192.168.0.10
# uncomment #k and comment the other with #w192.168.0.110
# in /etc/hosts und /etc/hosts-head
# musst DU vorher IPs mit #k and/or #w PREPPEN !
# habe /etc/hosts-head für locale IPs und siehe
# http://winhelp2002.mvps.org/hosts.htm
if ! egrep -q -w „$1“ /etc/hosts-head; then Befehl; fi
if [ „$2“ != „k“ -a „$2“ != „w“ ]; then Befehl; fi
modus=“#“$2
declare -a chgary
chgary=(„#k“ „#w“)
declare -a xchary
xchary=(“ “)
if egrep -q ^$modus.*$1.*$ /etc/hosts; then
if [ „$2“ == „k“ ]; then
h=1
i=0
else
h=0
i=1
fi
for datei in `ls /etc/hosts /etc/hosts-head`;
do # Ersetze „foo“ mit „bar“ NUR in Zeilen die „baz“ enthalten
#sed’/baz/s/foo/bar/g‘
sed -i „/^192.168.*$1.*$/s/^/${chgary[$h]}/g“ $datei
sed -i „/^${chgary[$i]}.*$1.*$/s/^${chgary[$i]}/${xchary[$i]}/g“ $datei
done
else
echo „nichts gefunden zum umschalten nach $2-LAN gefunden !“
egrep -w $1 /etc/hosts /etc/hosts-head
fi
exit 0

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.