Struktura until
je velice podobná struktuře while
. Jediný rozdíl je ve vyhodnocování podmínky pro běh bloku kódu mezi slovy do
a done
. Ve struktuře until
se blok kódu provede pouze, je-li podmínka vyhodnocena jako false
(nepravda). Zde je příklad struktury:
#!/bin/bash
x=0
until [ "$x" -ge 10 ]; then
echo "Aktuální hodnota x: $x"
x=$(expr $x + 1)
sleep 1
done
Tento kód vypadá velice podobně kódu příkladu uvedeného v předchozí kapitole. Vlastně se liší jen ve dvou věcech. Je použita struktura until a tedy příkaz test je upraven tak, aby byla struktura ukončena bude-li hodnota proměnné x větší nebo rovno 10. Znamená to tedy, že se vypíší hodnoty pouze od 0 do 9.
Příkaz sleep
pozastaví běh skriptu na tolik sekund, kolik je uveden parametr (v našem případě pozastaví běh skriptu na 1 sekundu). Další možnosti příkazu sleep se můžete dozvědět v manuálových stránkách, které říkají o příkazu sleep následující:
SLEEP(1) SLEEP(1) JMÉNO sleep - čeká zadaný časový interval POUŽITÍ sleep [--help] [--version] číslo[smhd]... POPIS Tato manuálová stránka popisuje GNU verzi příkazu sleep. Příkaz sleep čeká časový interval, který je součtem hodnot zadaných parametry. Každý argument je číslo nepovinně následované označením jednotky. Implicitní jednotkou jsou sekundy. Povolené jednotky jsou: s sekundy m minuty h hodiny d dny VOLBY --help Vypíše návod k použití na standardní výstup a bez chybně skončí. --version Vypíše číslo verze na standardní výstup a bezchybně skončí. FSF GNU Shell Utilities 1