Czytelnicy tacy jak ty pomagają wspierać MUO. Kiedy dokonujesz zakupu za pomocą linków na naszej stronie, możemy otrzymać prowizję partnerską. Czytaj więcej.

Linux umożliwia przechowywanie danych wyjściowych poleceń w plikach jako sposób przekierowania danych wyjściowych. Podczas zapisywania danych wyjściowych do pliku za pomocą > Lub >> operatorów, dane wyjściowe są przekierowywane bez wyświetlania informacji na terminalu.

Ale co, jeśli chcesz wydrukować dane wyjściowe na ekranie i jednocześnie zapisać je w pliku? Chociaż nie można tego zrobić za pomocą operatorów przekierowania danych wyjściowych, można to zrobić za pomocą polecenia tee w systemie Linux.

Podstawowa składnia poleceń

tee to standardowe narzędzie Linuksa używane do dzielenia wyjścia polecenia między standardowe wyjście i pliki.

W przeciwieństwie do większości poleceń Linuksa, tee jest używany z innymi programami używającymi potoku (|). Operator fajki — jeden z wielu operatorów wiersza poleceń w systemie Linux — pozwala programowi używać danych wyjściowych innego polecenia jako danych wejściowych. Być może użyłeś potoku podczas używania grep obok

instagram viewer
polecenie ls lub kot.

Podstawowa składnia polecenia tee to:

komenda | ścieżka pliku opcji tee

...Gdzie opcje I ścieżka pliku to argumenty wiersza poleceń i ścieżka do pliku, w którym chcesz zapisać dane wyjściowe.

Podziel wyjście terminala w systemie Linux Z tee

Najprostszym zastosowaniem tee jest podzielenie danych wyjściowych w celu wyświetlenia ich w terminalu oraz zapisanie ich w pliku. Na przykład, aby zapisać dane wyjściowe polecenia ls w pliku tekstowym o nazwie „wyjście.txt," uruchomić:

ls | tee ./wyjście.txt

Dane wyjściowe będą jak zwykle wyświetlać zawartość bieżącego katalogu roboczego. Sprawdzając plik output.txt, przekonasz się, że tee również zapisał dane wyjściowe w pliku.

Gdy określisz ścieżkę do pliku, tee sprawdza, czy plik istnieje. Jeśli go nie znajdzie, automatycznie utworzy plik, dzięki czemu będzie wygodny do użycia w skryptach powłoki. Jest to przydatne, gdy chcesz zarejestrować dane wyjściowe programu lub skryptu do późniejszego wykorzystania.

Będziesz musiał poprzedzić polecenie tee sudo, aby odczytać lub zapisać dane w pliku należącym do użytkownika root.

Jeśli określony plik zawiera dane przechowywane w środku, których nie chcesz zastępować, użyj -A flaga do dodać wyjście do pliku, zamiast kasować cały plik, a następnie zapisywać dane:

ls | tee -a ./wyjście.txt

Podobnie możesz przekierować dane wyjściowe do wielu plików, określając ścieżki oddzielone pojedynczymi spacjami:

ls | tee ./wyjście1.txt ./wyjście2.txt

Czasami nieoczekiwane błędy lub ręczne przerwy (przy użyciu Ctrl + C Lub Ctrl + Z) w poprzednim poleceniu może spowodować zamknięcie tee. Aby zignorować takie przerwy, użyj -I flaga:

ls | tee -i wyjście.txt

Do uzyskać pomoc dotyczącą wiersza poleceń dotyczące tee lub znajdź szczegóły wersji, użyj --pomoc I --wersja flagi w następujący sposób:

tee - pomóż
tee --wersja

Przekierowanie danych wyjściowych do innego polecenia

Możesz utworzyć łańcuch wyjściowy, łącząc tee z innymi poleceniami systemu Linux. Spowoduje to zapisanie danych wyjściowych w określonym pliku, a następnie przekazanie ich do następnego polecenia w celu przetworzenia.

Użyj następującego formatu, aby przekierować dane wyjściowe tee do innego polecenia:

komenda | ścieżka pliku tee | inne polecenie

Na przykład następujące polecenie zapisze dane wyjściowe polecenia ls w wyjście.txt przed ostatecznym przekierowaniem go do grep w celu szybkiego wyszukiwania:

ls | wyjście tee.txt | grep „Dokumenty”

Ogólnie rzecz biorąc, możesz użyć polecenia tee, aby się pobawić standardowe wejście i wyjście w systemie Linux.

Manipulowanie danymi wyjściowymi i tekstem za pomocą poleceń systemu Linux

Polecenie tee dodaje bardzo potrzebną funkcjonalność do standardowych operatorów przekierowania wyjścia w systemie Linux. Możesz nawet użyć go do manipulowania danymi wyjściowymi polecenia przed przekazaniem go do innego programu.

Podobnie możesz modyfikować tekst za pomocą terminala za pomocą niektórych standardowych poleceń systemu Linux. Przyzwyczajenie się do nich może zająć trochę czasu, ale ostatecznie manipulacja tekstem za pomocą wiersza poleceń jest warta nauczenia się dla każdego administratora systemu.