
Gabriel Brooks
0
4230
609
Po uruchomieniu polecenia w oknie terminala dane wyjściowe polecenia są zwykle drukowane na terminalu lub na ekranie, dzięki czemu można je natychmiast odczytać. Możesz także wydrukować dane wyjściowe polecenia do pliku, jeśli chcesz je zapisać.
Zapisanie danych wyjściowych polecenia w pliku jest pomocne, gdy próbujesz zdiagnozować problem. Aby uzyskać pomoc od pomocy technicznej, może być konieczne uruchomienie niektórych poleceń na komputerze i wysłanie wyników do zespołu pomocy technicznej. Jest to łatwe dzięki przekierowaniu danych wyjściowych w wierszu poleceń.
Dzisiaj omówimy, jak wysłać wynik polecenia do pliku tekstowego w powłoce bash w systemach Windows, Mac i Linux.
Uwaga: W naszym przykładzie użyjemy terminala Mac, ale działa on w ten sam sposób w powłoce bash w systemie Linux 40+ Najczęściej używane polecenia terminalu Linux 40+ Najczęściej używane polecenia terminalu Linux Niezależnie od tego, czy dopiero zaczynasz, czy po prostu ciekawi Cię Terminal Linux, oto najczęstsze polecenia, które przeprowadzą cię przez cały czas w systemie Linux. oraz w nowej powłoce bash w Windows 10 Krótki przewodnik po Linuksie Bash Shell w Windows 10 Szybki przewodnik po Linuksie Bash Shell w Windows 10 Teraz możesz uruchomić Linuksa w Windows. Dowiedz się więcej o Bash w systemie Windows, od tego, jak i dlaczego powinieneś go zainstalować, po ukryte funkcje, o których prawdopodobnie nie wiedziałeś. .
Przekieruj wyjście tylko do pliku
Istnieją dwa operatory przekierowujące dane wyjściowe polecenia do pliku zamiast ekranu.
The > symbol tworzy nowy plik, jeśli nie jest obecny, lub zastępuje plik, jeśli już istnieje. The >> tworzy również nowy plik, jeśli nie jest obecny, ale dołącza tekst na końcu pliku, jeśli już istnieje, zamiast nadpisywać plik.
Uwaga do siebie: kiedy przekierujesz wyjście skryptu powłoki do pliku, nie będzie on wyświetlany na konsoli :-) #StupidMe
- Xavier Mertens? (@xme) 5 sierpnia 2017 r
Aby przekierować wyjście polecenia do pliku, wpisz polecenie, określ > albo >> , a następnie podaj ścieżkę do pliku, do którego chcesz przekierować dane wyjściowe. Na przykład polecenie ls wyświetla listę plików i folderów w bieżącym katalogu. Po uruchomieniu następującego polecenia lista plików i folderów zostanie zapisana w pliku ls_output.txt plik w TerminalOutput teczka.
Zastąpić / ścieżka / do / pliku z pełną ścieżką do pliku, którego chcesz użyć.
ls> / path / to / file
To jest polecenie dla naszego przykładu.
ls> /Users/lorikaufman/TerminalOutput/ls_output.txt
Aby wyświetlić zawartość pliku w oknie Terminal, użyj kot polecenie, jak pokazano w następującym poleceniu. Ponownie zamień / ścieżka / do / pliku z pełną ścieżką do pliku, który chcesz wyświetlić.
cat / path / to / file
The > Operator zastępuje zawartość istniejącego pliku za każdym razem, gdy używasz go do przekierowania danych wyjściowych. Jeśli chcesz zapisać dane wyjściowe z wielu poleceń w jednym pliku, użyj >> zamiast tego operator. To dołącza dane wyjściowe polecenia na końcu określonego pliku, jeśli już istnieje. Jeśli plik nie istnieje, tworzy nowy.
Na przykład dołączymy informacje o systemie na końcu pliku, który utworzyliśmy powyżej. Więc w poniższym wierszu, uname -a to polecenie, po którym następuje >> operator przekierowania. Następnie pełna ścieżka do pliku, do którego chcemy dołączyć dane wyjściowe pliku uname dowództwo.
The -za parametr w uname polecenie wyświetla wszystkie dostępne informacje o systemie.
uname -a >> /Users/lorikaufman/TerminalOutput/ls_output.txt
Aby wyświetlić plik z dołączonymi informacjami w oknie terminala, wprowadź następujące polecenie z pełną ścieżką do pliku.
cat /Users/lorikaufman/TerminalOutput/ls_output.txt
Powtórz ten proces tyle razy, ile potrzebujesz, aby dopisać wynik polecenia na końcu pliku.
Oto kolejny przykład wysyłania danych wyjściowych ls polecenie jako drzewo katalogów, z podkatalogami wymienionymi rekurencyjnie ( R parametr) i jeden plik w wierszu (plik 1 parametr).
ls -1R> /Users/lorikaufman/TerminalOutput/dir_tree.txt
Następnie używamy kot polecenie, jak wspomniano wcześniej, aby wyświetlić zawartość pliku w oknie terminala.
cat /Users/lorikaufman/TerminalOutput/dir_tree.txt
Wydrukuj wyjście na ekran i przekieruj do pliku
The > i >> operatorzy nie wyświetlają wyniku polecenia na ekranie. Dane wyjściowe są wysyłane tylko do pliku.
Jeśli chcesz wysłać wynik do pliku i zobaczyć go na ekranie, użyj trójnik polecenie zamiast > i >> operatorzy.
Uwaga kujon! Dzisiaj odkryłem polecenie „tee”, które prowadzi zarówno do pliku, jak i do standardowego wyjścia. Unix nadal zachwyca. pic.twitter.com/aClIT8AdJB
- Zeke Sikelianos (@zeke) 29 sierpnia 2017 r
Aby użyć trójnik polecenie musisz przesłać dane wyjściowe z uruchomionego polecenia, np ls, do trójnik polecenie za pomocą operatora potoku pionowy pasek (|). Na przykład następujące polecenie pobiera dane wyjściowe pliku ls polecenie i potokuje go do trójnik dowództwo. The trójnik polecenie następnie wysyła dane wyjściowe na ekran i do pliku określonego za pomocą pełnej ścieżki do pliku.
ls | tee /Users/lorikaufman/TerminalOutput/ls_output.txt
Powyższe polecenie zastępuje całą zawartość pliku lub tworzy nową, jeśli nie istnieje, tak jak > operator. Wykorzystaliśmy następujące kot polecenie, aby wyświetlić zawartość naszego pliku w oknie Terminal.
cat /Users/lorikaufman/TerminalOutput/ls_output.txt
Aby użyć trójnik polecenie, aby wydrukować wynik na ekranie i dołączyć go do końca pliku, wprowadź następujące polecenie. Tutaj dodajemy pełne informacje o systemie na końcu pliku za pomocą uname -a polecenie, tak jak to zrobiliśmy z >> operator, ale wysyła również dane wyjściowe na ekran.
uname -a | tee -a /Users/lorikaufman/TerminalOutput/ls_output.txt
Następujące polecenie to trójnik wersja drukowania drzewa katalogów rekurencyjnie do pliku i ekranu, jeden plik w każdym wierszu, tak jak to zrobiliśmy z > operator.
ls -1R | tee /Users/lorikaufman/TerminalOutput/dir_tree.txt
Następnie używamy kot ponownie polecenie, aby wyświetlić zawartość pliku.
cat /Users/lorikaufman/TerminalOutput/dir_tree.txt
Ale czekaj, jest więcej
Istnieje wiele innych sposobów przekierowywania danych wyjściowych, w tym błędów, do pliku. O różnych operatorach i poleceniach używanych do przekierowywania danych wyjściowych można przeczytać w rozdziale Przekierowanie I / O w Advanced Bash Scripting Guide.
Użytkownicy komputerów Mac powinni także dodać do zakładek naszą ściągawkę poleceń terminalu Mac Ściągawka poleceń terminalu Mac Ściągawka poleceń terminalu Mac Nasza ogromna ściągawka poleceń terminalu Mac stanowi doskonałe źródło informacji o wszystkich ważnych poleceniach, które powinieneś znać. .