Jetzt noch mal in wach: herzlich willkommen hier im Forum!
Ich kann nur mutmaßen, aber ich vermute, Du willst ifconfig
so lange ausführen, bis es erfolgreich beendet ist. Das würde ich so machen, dass ich das in die Bedingung der Schleife aufnehme:
| #!/bin/sh
echo 'Pinne MAC ...'
while ! /sbin/ifconfig en0 lladdr 00:00:00:00:00:00; do
sleep 5
done
|
Das hat den Vorteil, dass die Schleifenbedingung genau da steht, wo man sie erwartet - nämlich im Schleifenkopf. Außerdem spart man sich solche "Tricks" wie das false
vor der Schleife.
Meine Lösung oben hat allerdings den Unterschied, dass es gleich beim Aufruf direkt probiert wird und erst geschlafen wird, wenn das nicht klappt. Ich nehme an, dass das schneller ist - zumindest, wenn der Aufruf meistens klappt. Wenn Du wirklich immer erst warten willst, geht das auch so
| #!/bin/sh
echo 'Pinne MAC ...'
while sleep 5 && ! /sbin/ifconfig en0 lladdr 00:00:00:00:00:00; do
:
done
|