0xsys.pl

Jak wykonać polecenie do skutku?

Chodzi o sytuację, gdy plecenie wykonane raz zwraca błąd. Jak zadeklarować je tak, żeby było automatycznie wykonywane co jakiś czas do skutku?

Są dwie możliwości - oto pierwsza.

until twoje_polecenie; do
    echo "Błąd! Próbuję ponownie za 2 sekundy..."
    sleep 2
done

I druga.

while ! twoje_polecenie; do
    echo "Niepowodzenie, ponawianie..."
    sleep 3
done

Obie wersje można zapisać także w jednej linii.

$ until twoje_polecenie; do echo "Błąd, ponawiam"; sleep 5; done
$ while ! twoje_polecenie; do echo "Błąd, ponawiam"; sleep 5; done

Na koniec jeszcze opcja która wyświetla tylko kropki w jednej linii.

$ until twoje_polecenie; do echo -ne "."; sleep 5; done

#linux