if / fi ???
if / fi ???
hallo,
ich möchte ein programm schreiben, dass über prüft ob die netzwerkkarte aktiviert ist oder nicht. wenn sie aktiviert ist soll er "eth0 is up" auf den screen schreiben und wenn sie deaktiviert ost, soll er "eth0 is down" auf den screen schreiben.
funktioniert das so??
if [ "eth0" != "up" ];
then
echo "eth0 is down"
else
echo "eth0 is up"
fi
mfg
ich möchte ein programm schreiben, dass über prüft ob die netzwerkkarte aktiviert ist oder nicht. wenn sie aktiviert ist soll er "eth0 is up" auf den screen schreiben und wenn sie deaktiviert ost, soll er "eth0 is down" auf den screen schreiben.
funktioniert das so??
if [ "eth0" != "up" ];
then
echo "eth0 is down"
else
echo "eth0 is up"
fi
mfg
Du kannst den aktuellen Status der Netzwerkinterfaces aus der Datei /etc/network/ifstatus auslesen.
Ich habe das mal in ein Skript geschustert
Dann bekomme ich die Ausgabe:
Code: Alles auswählen
/#cat /etc/network/ifstate
lo=lo
eth0=eth0
/#ifdown lo
/# cat /etc/network/ifstate
eth0=eth0
/#
Code: Alles auswählen
#!/bin/sh
bla=`cat /etc/network/ifstate`
echo $bla
for i in $bla; do
echo "--> " $i
if [ "$i" == "eth0=eth0" ];then
echo "eth0 is up"
fi
done
eaglequick and dirty hat geschrieben:(~): ./test.sh
eth0=eth0 lo=lo
--> eth0=eth0
eth0 is up
--> lo=lo
"I love deadlines. I love the whooshing sound they make as they fly by." -- Douglas Adams
danke das funzt auch außer dass er immer schreibt das die eth0 up is egal ob si up is oda down.
habe folgendes schon probiert:
und ich habe das echo "eth0 is down" auch schon in eine eigene if-schleife getan!
und das funzt nicht
mfg
habe folgendes schon probiert:
Code: Alles auswählen
#!/bin/sh
bla=`cat /etc/network/ifstate`
echo $bla
for i in $bla; do
echo "--> " $i
if [ "$i" == "eth0=eth0" ];then
echo "eth0 is up"
else
echo "eth0 is down"
fi
done
und das funzt nicht
mfg
- mistersixt
- Beiträge: 6601
- Registriert: 24.09.2003 14:33:25
- Lizenz eigener Beiträge: GNU Free Documentation License