logo [8kb]
Pętla for
Pętla for

Wykonuje polecenia zawarte wewnątrz pętli, na każdym składniku listy (iteracja).

Składnia:

for zmienna in lista
do
  polecenie
done
Przykład:

for x in jeden dwa trzy
do
  echo "To jest $x"
done
Zmiennej x przypisana jest lista, która składa się z trzech elementów: jeden, dwa, trzy. Wartośćią zmiennej x staje się po kolei każdy element listy, na wszystkich wykonywane jest polecenie: echo "To jest $x". Pętla for jest bardzo przydatna w sytuacjach, gdy chcemy wykonać jakąś operację na wszystkich plikach w danym katalogu. Na przykład chcemy uzyskać listę wszystkich plików o danym rozszerzeniu znajdujących się w jakimś katalogu, robimy to tak:

#!/bin/bash
for x in *html
do
  echo "To jest plik $x"
done
lub jeśli chcemy zmienić nazwy plików pisane DUŻYMI literami na nazwy pisane małymi literami:

#!/bin/bash
for nazwa in *
do
  mv $nazwa `echo $nazwa | tr '[A-Z]' '[a-z]'`
done
Za zmianę DUŻYCH liter na małe (i na odwrót) odpowiedzialne jest polecenie tr.

[ Index ] [ Pętla select ] [ Pętla while i until ]