Sprzęt komputerowy

Potoki i przekierowania systemu Linux

Spisu treści:

Anonim

Wielu już wie, że w Linuksie terminal zapewnia nam cenne narzędzia do udoskonalania i optymalizacji oczekiwanych wyników. W tym poście wykorzystujemy nauczenie, jak używać przekierowań i potoków. I to dlatego, że terminal okazuje się pudełkiem z niesamowitymi narzędziami. Daje nam do dyspozycji niezliczone polecenia i narzędzia, które pomagają nam w codziennym wykonywaniu codziennych zadań.

Indeks treści

Przekierowania i potoki w systemie Linux

Podstawowe pojęcia

Zanim wyjaśnimy, czym są potoki i ich znaczenie (część zabawy), musimy jasno określić trzy podstawowe pojęcia w Linuksie: standardowe wejście, standardowe wyjście i standardowy błąd.

Standardowe wejście: reprezentuje dane niezbędne do poprawnego działania aplikacji. Przykładem może być plik ze strukturalnymi danymi lub informacjami wprowadzonymi z terminala. W terminalu jest reprezentowany jako typ 0.

Standardowe wyjście: oznacza sposób, w jaki aplikacja wykorzystuje do wyświetlania informacji o swoich procesach i / lub wynikach, mogą to być proste komunikaty, powiadomienia o postępie lub pliki ze strukturalnymi danymi, takie jak rozdzielczość procesu (na przykład raport). W terminalu jest reprezentowany jako typ 1.

Błąd standardowy: jest to sposób, w jaki aplikacje informują nas o problemach, które mogą wystąpić w momencie ich wykonania. Jest reprezentowany jako typ 2 w terminalu.

Wszystkie typy są reprezentowane jako pliki fizyczne w systemie, ponieważ jak trzeba przeczytać w poprzednim poście, w Linuksie wszystko jest plikiem.

Przekierowania

Co to jest przekierowanie?

Przekierowania polegają na przenoszeniu informacji z jednego typu na drugi (typy wymienione powyżej), na przykład ze standardowego błędu na standardowe wyjście lub ze standardowego wyjścia na standardowe wejście. Poprzez terminal osiągamy to za pomocą symbolu>.

Przekieruj wyjście i błąd standardowy

Na przykład, aby przekierować dane wyjściowe polecenia i wysłać je do pliku; musimy tylko wykonać:

ls -la ~> (nazwa pliku)

Jeśli jednak wykonamy to w ten sposób, zawartość naszego pliku będzie za każdym razem zastępowana przez dane wyjściowe polecenia. Jeśli chcemy, aby dane wyjściowe zostały dodane do pliku, wykonanie byłoby następujące:

ls -la ~ >> (nazwa pliku)

Co ciekawe, możemy przekierować standardowe wyjścia, błędy i dane wejściowe. To tutaj liczby, o których wspomniałem na początku, mają sens. Na przykład, aby zmusić program do pokazywania nam błędów generowanych podczas wykonywania, przekierowujemy standardowy błąd na standardowe wyjście podczas jego wykonywania:

aplikacja 2 >> i 1

Gdzie 2 oznacza błąd standardowy, a 1 oznacza standardowe wyjście.

Możemy również odrzucić standardowy błąd w pewnym procesie, co jest powszechne w administracji systemów. W tym celu wykonujemy:

application 2> / dev / null

Odrzuć nawet standardowe wyjście:

application> / dev / null

Ponieważ w systemie Linux plik / dev / null jest plikiem specjalnym, w którym informacje są wysyłane w celu ich odrzucenia.

Przekieruj dane wejściowe

W ten sam sposób, w jaki przekierowujemy standardowe dane wyjściowe i błędy, możemy to zrobić za pomocą standardowych danych wejściowych z pliku i do tego używamy operatora <.

POLECAMY Najlepsze mało znane przeglądarki Linux

Jest to przydatne w poleceniach lub programach, w których argumenty są wprowadzane za pomocą klawiatury, w taki sposób, że możemy zastąpić je plikiem, na przykład:

echo „Hello world”> powitanie kot <powitanie Witaj świecie

Spójrz na: Polecenia systemu Linux: poznaj system i manipuluj nim

Rurociągi

Po zrozumieniu działania przekierowań koncepcja rur będzie dość prosta. Wśród zasad filozofii Uniksa mamy małe aplikacje, które są odpowiedzialne za wykonywanie bardzo specyficznych zadań i które wspólnie wykonują złożone zadania. Zgodnie z tą zasadą musi istnieć sposób interakcji między zestawem aplikacji. To tutaj powstają tak zwane rury.

Rurociągi to specjalny rodzaj przekierowania, który pozwala wysłać standardowe wyjście jednego polecenia jako standardowe wejście drugiego. Sposób na przedstawienie tego jest za pomocą symbolu | (rura). Jego główna użyteczność polega na tym, że oferuje nam możliwość łączenia poleceń, wzbogacając programowanie.

Prostym i bardzo przydatnym przykładem jest zobaczenie procesów działających w systemie za pomocą ps i przekierowanie ich danych wyjściowych w celu sortowania według PID:

ps -a | sortuj

Jak widać przekierowania i potoki są podstawowymi koncepcjami Linuksa i na pewno powinniśmy sobie z nimi poradzić. W ten sposób poczujesz się coraz bardziej komfortowo w terminalu.

Powiedz nam w komentarzach, do czego użyjesz lub użyjesz przekierowań i potoków w terminalu?

Sprzęt komputerowy

Wybór redaktorów

Back to top button