Синтаксис общий:
#!/bin/bash $f="0 1 2 3 4" for i in $f do echo "$i" done
Можно подставлять вывод команды (например, однострочного ls). Тогда for будет перебирать элементы вывода:
lst=`ls -h -l` for n in $lst do echo '=='$n'==' done
Если есть объявленный мвссив, например
str=('st1' 'st2' 'st3')
То его не перебрать предыдущим варинтом, нужна конструкция
for m in "${str[@]}" do echo $m done
Обратите внимание, при объявлении массива - его элементы записываются через пробел!