Você pode fazer algo como:
alias forever='while ((1))' \
try-again='continue 2' \
ok-done='break'
forever {
for i ("$list[@]") {
(( i == 2 )) && try-again
}
ok-done
}
Observe que você precisa de "$list[@]"
em vez de $list
se não quiser omitir os elementos vazios.
Não muito mais legível do que:
for ((i = 1; i <= $#list; i++)) {
(( list[i] == 2 )) && i=1
}
embora.