Jazyk awk dovoluje použít příkazy pro řízení toku obvyklé u vyšších programovacích jazyků. Jde o tyto příkazové konstrukce:
if (podmínka) příkaz [ else příkaz ]Z výše uvedených konstrukcí můžeme vytvořit např. tyto příklady:
while (podmínka) příkaz
do příkaz while (podmínka)
for (výraz1; výraz2; výraz3) příkaz
for (proměnná in pole) příkaz
break
continue
next
delete pole[index]
exit [ výraz ]
{ příkaz[; příkaz ... ] }
Následující příklad vytiskne vždy jednu položku na jeden řádek:{ if ($3 > 1000) $3 = "moc velké" print }
V příkladu jsme si ukázali, že na místě příkazu smí být i více příkazů uzavřených do složených závorek. Následující příkaz provede totéž:{ i = 1 while (i <= NF) { print $i ++i }}
{ for (i = 1; i <= NF; i++) print $i }První výraz znamená počáteční přiřazení, druhý výraz představuje podmínku a třetí výraz se opakovaně provádí.
Příkaz break okamžitě ukončí provádění cyklu while nebo for. Příkaz continue přejde ihned na novou iteraci cyklu.
Příkazem next přejdeme na zpracování dalšího řádku (záznamu) vstupu. Příkaz exit je totéž, co načtení konce vstupu (souboru).
Do programu pro awk lze vkládat komentáře. Řádek s poznámkou musí začínat znakem #.