busybox (ash): "if ping..." mit mehreren Adressen

08/04/2016 - 16:05 von Wolfgang Klein | Report spam
Moin!

Ich würde gerne in einem Skript, das einen Rechner mittels eines einfachen

if ping -w 3 -c1 rechner1;

überwacht, einen zweiten Rechner hinzufügen und das Ergebnis mit "oder"
verbinden, also:

if ping -w3 -c1 rechner1 -o ping -w3 -c1 rechner2;

Aber wie so oft im Leben ist das nicht ganz so einfach. Probiert habe
ich bereits folgende Varianten, leider alle erfolglos:

if `ping -w 3 -c1 rechner1` -o `ping -w3 -c1 rechner2`;

if $(ping -w 3 -c1 rechner1) -o $(ping -w3 -c1 rechner2);

if [ ping -w 3 -c1 rechner1 ] -o [ ping -w3 -c1 rechner2 ];

if [ `ping -w 3 -c1 rechner1` ] -o [ `ping -w3 -c1 rechner2` ];


Wie geht es wohl richtig? Wenn es nicht als eleganter Einzeiler geht,
wàre das kein Beinbruch, aber lehrreich.

Als Shell làuft auf dem Systen die ash aus der BusyBox.



Wolfgang
 

Lesen sie die antworten

#1 Juergen Ilse
08/04/2016 - 16:26 | Warnen spam
Wolfgang Klein wrote:
Ich würde gerne in einem Skript, das einen Rechner mittels eines einfachen

if ping -w 3 -c1 rechner1;

überwacht, einen zweiten Rechner hinzufügen und das Ergebnis mit "oder"
verbinden, also:

if ping -w3 -c1 rechner1 -o ping -w3 -c1 rechner2;



if ping -w3 -c1 rechner1 || ping -w3 -c1 rechner2;

Tschuess,
Juergen Ilse ()
Ein Domainname ist nur ein Name, nicht mehr und nicht weniger.
Wer mehr hineininterpretiert, hat das Domain-Name-System nicht
verstanden.

Ähnliche fragen