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 pisać to samo polecenie, możesz użyć pętli for, aby iterować po liście elementów i wykonać działanie na każdym z nich.
Oto podstawowa struktura pętli for w Bashu:
#!/bin/bash
for name in Alice Bob Charlie; do
echo "Hello, $name!"
doneTen skrypt wyświetla powitanie dla każdego imienia z listy. Zmienna name przyjmuje kolejno każdą wartość: najpierw "Alice", potem "Bob", a następnie "Charlie". Słowo kluczowe do oznacza początek ciała pętli, a done ją kończy.
Pętle for są szczególnie przydatne w połączeniu z symbolami wieloznacznymi. Możesz przejść przez wszystkie pliki w katalogu:
#!/bin/bash
for file in *.txt; do
echo "Processing $file"
doneTa pętla przechodzi przez każdy plik .txt w bieżącym katalogu. Przy każdej iteracji zmienna file przechowuje nazwę bieżącego pliku, co pozwala automatycznie wykonywać operacje na każdym pliku.
Możesz także przejść przez zakres liczb, używając rozwijania nawiasów klamrowych:
#!/bin/bash
for i in {1..5}; do
echo "Number: $i"
doneWypisuje to liczby od 1 do 5. Pętle zamieniają powtarzalne zadania w zaledwie kilka wierszy kodu, dzięki czemu skrypty są wydajniejsze i łatwiejsze w utrzymaniu.
Wyzwanie
ŁatwyUtwórz skrypt powłoki o nazwie countdown.sh, który używa pętli for do wyświetlenia odliczania od 5 do 1.
Twój skrypt powinien:
- Zaczynać się od wiersza shebang (
#!/bin/bash) - Używać pętli for z rozwijaniem nawiasów klamrowych, aby iterować przez liczby od 5 do 1
- Wyświetlać każdą liczbę w osobnym wierszu w formacie:
Countdown: [number]
Ustaw skrypt jako wykonywalny i uruchom go. Wynik powinien być następujący:
Countdown: 5
Countdown: 4
Countdown: 3
Countdown: 2
Countdown: 1Podpowiedź: Użyj
{5..1}, aby utworzyć malejący zakres. Wewnątrz pętli użyjecho "Countdown: $i", gdzieijest zmienną pętli.
Spróbuj swoich sił
Ta lekcja zawiera krótki quiz. Zacznij lekcję, żeby na niego odpowiedzieć i śledzić swoje postępy.
Wszystkie lekcje w sekcji Podstawy
4Katalogi
Utwórz katalogSkopiuj katalogPrzenieś i zmień nazwę kataloguUsuń katalogPodsumowanie — operacje na katalogach7Zawartość plików
Początek i koniecLiczba słówPolecenie sortPolecenie uniqPodstawy grepgrep z opcjamiPowtórka – detektyw tekstu10Projekt analizatora logów
Przegląd projektuPrzeglądanie pliku logów2Nawigacja
Wyświetlanie bieżącego kataloguWyświetlanie plikówZmiana kataloguŚcieżki bezwzględne i względneKatalog domowy i głównyPowtórka — znajdź drogę8Przekierowywanie
Standardowe wyjścieNadpisywanie plikuDopisywanie do plikuStandardowe wejścieStandardowe wyjście błędówPodsumowanie — tworzenie dziennika3Pliki
Utwórz plikOdczytaj plikSkopiuj plikPrzenieś i zmień nazwę plikuUsuń plikPodsumowanie — operacje na plikach6Symbole wieloznaczne i wzorce
Symbol wieloznaczny gwiazdkaSymbol wieloznaczny znak zapytaniaSymbole wieloznaczne w nawiasachŁączenie symboli wieloznacznychPowtórka — operacje selektywne9Potoki
Czym jest potokŁączenie dwóch poleceńŁączenie wielu poleceńPotok z grepPodsumowanie – potok danychPoćwicz samodzielnie: Edytor online Terminal