Menu
Coddy logo textTech

Pętla for

Część sekcji Podstawy ścieżki Terminal w Coddy. Lekcja 71 z 82.

Czasami trzeba powtórzyć działanie wiele razy. Zamiast wielokrotnie wpisywać to samo polecenie, możesz użyć pętli for, aby przejść przez listę elementów i wykonać działanie na każdym z nich.

Oto podstawowa struktura pętli for w Bash:

#!/bin/bash
for name in Alice Bob Charlie; do
    echo "Hello, $name!"
done

Ten skrypt wyświetla powitanie dla każdego imienia na liście. Zmienna name przyjmuje kolejno każdą wartość: najpierw "Alice", potem "Bob", a następnie "Charlie". Słowo kluczowe do oznacza początek treści pętli, a done ją kończy.

Pętle for są szczególnie przydatne w połączeniu z symbolami wieloznacznymi. Możesz przejść w pętli przez wszystkie pliki w katalogu:

#!/bin/bash
for file in *.txt; do
    echo "Processing $file"
done

Ta pętla przechodzi przez każdy plik .txt w bieżącym katalogu. W każdej iteracji zmienna file przechowuje bieżącą nazwę pliku, dzięki czemu możesz automatycznie wykonywać operacje na każdym pliku.

Możesz również iterować po zakresie liczb, używając rozwijania nawiasów klamrowych:

#!/bin/bash
for i in {1..5}; do
    echo "Number: $i"
done

To wyświetla liczby od 1 do 5. Pętle for zamieniają powtarzalne zadania w zaledwie kilka wierszy kodu, dzięki czemu Twoje skrypty są wydajniejsze i łatwiejsze w utrzymaniu.

challenge icon

Wyzwanie

Łatwy

Utwórz skrypt powłoki o nazwie countdown.sh, który używa pętli for do wypisania odliczania od 5 do 1.

Twój skrypt powinien:

  1. Zaczynać się od wiersza shebang (#!/bin/bash)
  2. Używać pętli for z rozwijaniem nawiasów klamrowych, aby przejść przez liczby od 5 do 1
  3. Wypisywać każdą liczbę w osobnym wierszu w formacie: Countdown: [number]

Nadaj skryptowi uprawnienia do wykonywania i uruchom go. Wynik powinien być następujący:

Countdown: 5
Countdown: 4
Countdown: 3
Countdown: 2
Countdown: 1

Podpowiedź: Użyj {5..1}, aby utworzyć malejący zakres. Wewnątrz pętli użyj echo "Countdown: $i", gdzie i jest zmienną pętli.

Spróbuj swoich sił

Terminal
quiz iconSprawdź się

Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.

Wszystkie lekcje w sekcji Podstawy

Poćwicz samodzielnie: Edytor online Terminal