Menu
Coddy logo textTech

Łączenie wielu poleceń

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

Nie musisz ograniczać się do łączenia tylko dwóch poleceń. Potoki mogą łączyć dowolną liczbę poleceń, a każde z nich przetwarza wynik poprzedniego polecenia.

Po prostu dodaj więcej symboli |, aby rozbudować potok:

cat data.txt | sort | head -5

Odczytuje to plik, sortuje wszystkie wiersze alfabetycznie, a następnie wyświetla tylko pierwsze 5 wyników. Dane przepływają od lewej do prawej przez kolejne polecenia.

Oto praktyczny przykład, który znajduje unikalne, posortowane wpisy:

cat names.txt | sort | uniq

Zawartość pliku jest najpierw sortowana (co grupuje duplikaty), a następnie uniq usuwa kolejne zduplikowane wiersze. Kolejność ma tu znaczenie: uniq usuwa tylko sąsiadujące duplikaty, dlatego sortowanie musi być pierwsze.

Możesz dodać jeszcze więcej etapów. Aby policzyć, ile jest unikalnych imion:

cat names.txt | sort | uniq | wc -l

Każda potok dodaje kolejny etap transformacji. Podczas tworzenia dłuższych potoków zastanów się, jakich danych wejściowych wymaga każde polecenie i jakie dane wyjściowe generuje. Format danych wyjściowych jednego polecenia musi być odpowiedni jako dane wejściowe dla następnego.

challenge icon

Wyzwanie

Łatwy

Plik visitors.txt zawiera listę imion odwiedzających, w której występują duplikaty. Użyj potoku złożonego z czterech poleceń, aby policzyć liczbę unikalnych odwiedzających.

Uruchom jedno polecenie, które:

  • Używa cat do odczytania pliku visitors.txt
  • Przekazuje wynik do sort, aby uporządkować imiona alfabetycznie
  • Przekazuje wynik do uniq, aby usunąć zduplikowane wpisy
  • Przekazuje wynik do wc -l, aby policzyć unikalne imiona

Podpowiedź: Połącz wszystkie cztery polecenia, używając kilku symboli |. Pamiętaj, że uniq usuwa tylko sąsiadujące duplikaty, dlatego przed nim należy sortować.

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