0Pricing
Linux Command Line & Bash Scripting Mastery · Lekcja

Konstrukcje pętli (for, while)

Zautomatyzuje Pan/Pani powtarzalne zadania za pomocą pętli „for” i „while”, iterując po listach, plikach lub warunkach.

Konstrukcje pętli (for, while) to bezpłatna lekcja Linux Command Line & Bash Scripting Mastery na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Linux Command Line & Bash Scripting Mastery, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Linux Command Line & Bash Scripting Mastery zawiera 4 lekcji w sumie.

Automatyzowanie zadań za pomocą pętli

Witaj! W tej lekcji poznasz pętle w skryptach Bash. Pętle to potężne narzędzia, które pozwalają skryptom wielokrotnie powtarzać zestaw poleceń.

Jest to niezbędne do automatyzowania powtarzalnych zadań, przetwarzania list danych lub wykonywania działań do momentu spełnienia określonego warunku. Poznamy dwa główne typy: pętle for i pętle while.

Pętla „for”: listy elementów

Pętla for doskonale nadaje się do przechodzenia po ustalonej liście elementów. Lista może zawierać ciąg słów, nazwy plików, liczby lub dowolne inne zdefiniowane wartości.

Jej podstawowa składnia to:

  • for variable in item1 item2 ...; do
  • commands to repeat
  • done

Każdy element listy zostanie przypisany do zmiennej variable, a polecenia zostaną wykonane dla każdego elementu.

Przykład: Iterowanie po liście

Zobaczmy działanie pętli for, iterując po liście owoców. Uruchom ten przykład, aby zobaczyć, jak przetwarzany jest każdy owoc:

#!/bin/bash

echo "My favorite fruits:"
for fruit in Apple Banana Orange;
do
  echo "$fruit is delicious!"
done

Pętla 'for': sekwencje liczbowe

Pętla for może również z łatwością generować sekwencje liczbowe i iterować po nich. Jest to bardzo przydatne w zadaniach wymagających zliczania lub przetwarzania elementów według indeksu.

Do utworzenia sekwencji liczb można użyć rozwijania nawiasów klamrowych {start..end}:

  • for i in {1..5}; do ... done

Alternatywnie polecenie seq może generować sekwencje z większą liczbą opcji, takich jak określenie kroku:

  • for i in $(seq 1 2 10); do ... done

Przykład: Zliczanie za pomocą 'for'

Oto sposób użycia rozwijania nawiasów klamrowych do zliczania od 1 do 3. Jest to często stosowany wzorzec w prostych pętlach numerycznych.

#!/bin/bash

echo "Counting up:"
for i in {1..3};
do
  echo "Number: $i"
done

Pętla 'while': powtarzanie warunkowe

Pętla while wykonuje blok poleceń wielokrotnie tak długo, jak długo określony warunek pozostaje prawdziwy. Jest idealna, gdy z góry nie wiadomo, ile razy trzeba wykonać pętlę.

Jej podstawowa składnia wygląda następująco:

  • while [ condition ]; do
  • commands to repeat
  • done

Warunek jest sprawdzany przed każdą iteracją. Jeśli jest prawdziwy, polecenia są wykonywane; jeśli nie, pętla się kończy.

Przykład: Prosty licznik z użyciem 'while'

Ten przykład pokazuje pętlę while, która zlicza od 1 do 3. Zwróć uwagę, że zmienna count jest zwiększana wewnątrz pętli, aby ostatecznie sprawić, że warunek stanie się fałszywy.

#!/bin/bash

count=1
echo "Counting with while loop:"
while [ $count -le 3 ];
do
  echo "Current count: $count"
  count=$((count + 1))
done

Pętla 'while': odczytywanie plików wiersz po wierszu

Bardzo częstym i przydatnym zastosowaniem pętli while jest odczytywanie i przetwarzanie pliku wiersz po wierszu. Ma to kluczowe znaczenie podczas analizowania plików dzienników, plików konfiguracyjnych lub dowolnych danych tekstowych.

Wzorzec często wygląda tak:

  • while IFS= read -r line; do
  • commands to process $line
  • done < filename.txt

IFS= read -r to niezawodny sposób odczytywania wierszy, zapobiegający problemom z białymi znakami i ukośnikami odwrotnymi.

Przykład: Przetwarzanie pliku

Utwórzmy plik tymczasowy i użyjmy pętli while, aby odczytać i wyświetlić jego zawartość wiersz po wierszu. Pokazuje to praktyczne zastosowanie przetwarzania plików.

#!/bin/bash

# Create a temporary file for demonstration
echo "First line of data" > temp_data.txt
echo "Second line of data" >> temp_data.txt
echo "Third line of data" >> temp_data.txt

echo "\nReading from temp_data.txt:"
while IFS= read -r line;
do
  echo "Processed: $line"
done < temp_data.txt

# Clean up the temporary file
rm temp_data.txt

Wybór typu pętli

Poznałeś już pętle for i while. Każda z nich ma swoje zalety, zależnie od wykonywanego zadania.

Rozważ następujący scenariusz: trzeba przetworzyć każdą nazwę pliku w określonym katalogu.

Podsumowanie: pętle do automatyzacji

Udało Ci się poznać konstrukcje pętli w Bashu!

  • Pętla for idealnie nadaje się do iterowania po znanej, skończonej liście elementów lub sekwencji liczb.
  • Pętla while jest najlepsza, gdy trzeba powtarzać polecenia tak długo, jak długo określony warunek pozostaje prawdziwy; często używa się jej do zliczania lub odczytywania plików wiersz po wierszu.

Opanowanie tych pętli jest podstawą pisania zaawansowanych i zautomatyzowanych skryptów Bash. Ćwicz dalej, aby rozwijać swoje umiejętności tworzenia skryptów!

Często zadawane pytania

Czy lekcja „Konstrukcje pętli (for, while)” jest bezpłatna?

Tak — pełny tekst „Konstrukcje pętli (for, while)” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Linux Command Line & Bash Scripting Mastery, przejdź na CoddyKit PRO. Kurs Linux Command Line & Bash Scripting Mastery zawiera 4 lekcji w sumie.

Co nauczysz się w „Konstrukcje pętli (for, while)”?

Zautomatyzuje Pan/Pani powtarzalne zadania za pomocą pętli „for” i „while”, iterując po listach, plikach lub warunkach. Ćwiczysz Linux Command Line & Bash Scripting Mastery z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Linux Command Line & Bash Scripting Mastery?

Nie wymagamy żadnego doświadczenia. Linux Command Line & Bash Scripting Mastery w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.

Ile czasu zajmuje lekcja „Konstrukcje pętli (for, while)”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Linux Command Line & Bash Scripting Mastery?

Tak. Każda lekcja Linux Command Line & Bash Scripting Mastery zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Konstrukcje pętli (for, while)
  2. Funkcje w skryptach Bash
  3. Argumenty i opcje skryptów ($@, $#, getopts)
  4. Instrukcja case i dopasowywanie wzorców
← Powrót do Linux Command Line & Bash Scripting Mastery