Słowo kluczowe loop dla listy
Instalowanie wielu pakietów w jednym zadaniu.
Słowo kluczowe loop dla listy to bezpłatna lekcja Ansible Academy 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 Ansible Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Ansible Academy zawiera 4 lekcji w sumie.
Koniec z kopiowaniem zadań
Trzeba zainstalować trzy pakiety? Pisanie trzech niemal identycznych zadań jest żmudne i podatne na błędy. Słowo kluczowe loop pozwala jednemu zadaniu iterować po liście. 🔁
Jak działa loop
Dodaj loop do zadania i przekaż mu listę. Ansible uruchamia to zadanie raz dla każdego elementu, podstawiając każdą wartość do argumentów modułu.
Poznaj zmienną item
W zadaniu wykonującym pętlę bieżąca wartość z listy jest dostępna jako item. Odwołują się Państwo do niej za pomocą {{ item }} wszędzie tam, gdzie jest potrzebna.
- name: Show each fruit
ansible.builtin.debug:
msg: "{{ item }}"
loop:
- apple
- banana
- cherryInstalowanie wielu pakietów
Klasyczny przypadek użycia: zainstalowanie całej listy pakietów w jednym zadaniu. Każda nazwa trafia do modułu pakietów za pośrednictwem item.
- name: Install tools
ansible.builtin.package:
name: "{{ item }}"
state: present
loop:
- git
- curl
- vimIterowanie po liście ze zmiennej
Lista nie musi być wpisana bezpośrednio w zadaniu. Można wskazać zmienną za pomocą loop, aby to samo zadanie dostosowywało się do wartości zdefiniowanych w innym miejscu.
vars:
packages:
- git
- curl
tasks:
- name: Install
ansible.builtin.package:
name: "{{ item }}"
loop: "{{ packages }}"loop a with_items
Mogą Państwo spotkać starsze playbooki korzystające z with_items. Nadal działa, ale w przypadku prostych list nowoczesną i zalecaną formą jest loop.
Jedno zadanie, wiele wyników
Pętla uruchamia zadanie dla każdego elementu, dlatego dane wyjściowe zawierają jeden wiersz wyniku dla każdej iteracji. Widać dokładnie, które wartości zostały zmienione.
Pętle zachowują idempotencję
Iterowanie nie narusza idempotencji. Jeśli pakiet jest już zainstalowany, dana iteracja zgłasza ok; tylko nowe pakiety zgłaszają changed.
Wiele menedżerów pakietów obsługuje listy zbiorczo
Niektóre moduły przyjmują listę bezpośrednio, co jest jeszcze szybsze. Jednak loop to uniwersalny wzorzec działający z niemal każdym modułem.
Iterowanie po liczbach też
Listy nie zawierają wyłącznie ciągów znaków. Można iterować po liczbach lub dowolnym typie danych, a item przechowuje dowolną wartość znajdującą się na liście.
- name: Print ports
ansible.builtin.debug:
msg: "Port {{ item }}"
loop:
- 80
- 443
- 8080Puste listy są bezpieczne
Jeśli lista jest pusta, zadanie po prostu uruchamia się zero razy. Nie ma błędu ani negatywnych skutków. Iterowanie po zmiennej, która może być pusta, jest całkowicie bezpieczne.
Szybki test
Jak odwołać się do bieżącej wartości z listy wewnątrz zadania wykonującego pętlę?
Podsumowanie: można używać pętli
Zastąpili Państwo powtarzalne zadania jednym loop, uzyskiwali dostęp do każdej wartości za pomocą item i zachowali idempotencję. Następnie: iterowanie po słownikach. 🎉
Ucz się YAML dzięki korepetycjom AI — za darmo
Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.
- Kursy
- 30
- Lekcje
- 120
Często zadawane pytania
Czy lekcja „Słowo kluczowe loop dla listy” jest bezpłatna?
Tak — pełny tekst „Słowo kluczowe loop dla listy” 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 Ansible Academy, przejdź na CoddyKit PRO. Kurs Ansible Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Słowo kluczowe loop dla listy”?
Instalowanie wielu pakietów w jednym zadaniu. Ćwiczysz Ansible Academy 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ąć Ansible Academy?
Nie wymagamy żadnego doświadczenia. Ansible Academy 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 „Słowo kluczowe loop dla listy”?
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 Ansible Academy?
Tak. Każda lekcja Ansible Academy 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
- Słowo kluczowe loop dla listy
- Iterowanie po słownikach
- Zagnieżdżone pętle z subelements
- loop_control: label, index i pause