Używając Linuksa, możesz napotkać odniesienia do „standardowego wejścia/wyjścia” lub „standardowego wejścia”, „standardowego wyjścia” i „standardowego błędu”. Co oznaczają te terminy?

Wejście standardowe

Standardowe dane wejściowe to termin określający dane wejściowe, które otrzymuje program oparty na poleceniach. W użyciu interaktywnym zwykle pochodzi z klawiatury, ale jak zobaczysz później, może również pochodzić z pliku.

Podczas gdy klawiatura w dzisiejszych czasach jest zwykle podłączona bezpośrednio do komputera, kiedy terminale tekstowe były bardziej wspólne, standardowe wejście zostało pobrane z klawiatury terminala podłączonej do centralnego minikomputera lub Główna rama. Współczesne systemy Linux wykorzystują emulatory terminali lub konsolę systemową jako standardowe wejście.

Wyjście standardowe

Standardowe wyjście, podobnie jak standardowe wejście, to miejsce, w którym program wyśle ​​swoje wyjście tekstowe. Ponownie, jest to zazwyczaj emulator terminala w nowoczesnych systemach, ale w przeszłości był to również emulator fizyczny, z ekranami CRT lub drukowany na papierze za pomocą dalekopisu.

instagram viewer

Terminale teletype były bardziej popularne, gdy poprzednik Linuksa, Unix, był rozwijany w Bell Labs pod koniec lat 60. i na początku lat 70. XX wieku.

Związane z: Dlaczego polecenia systemu Linux są tak krótkie? Historia poleceń Linuksa

Podobnie jak standardowe wejście, możesz również przekierować standardowe wyjście do pliku.

Standardowy błąd

Błąd standardowy jest zwykle używany w przypadku wszelkich komunikatów o błędach, jakie może wygenerować program. Podobnie jak w przypadku standardowego wyjścia, jest ono zwykle wyświetlane na ekranie, ale można je również przekierować do pliku lub urządzenia blokowego, takiego jak /dev/null.

Jak przekierować wejście i wyjście w systemie Linux?

Jedną z najpotężniejszych funkcji systemów Linux i Unix jest możliwość przekierowania wejścia i wyjścia do plików i innych programów.

Najczęściej stosowaną metodą jest wysyłanie danych wyjściowych z jednego polecenia do drugiego lub „potoku”. Do Na przykład, aby zobaczyć, ile poleceń Linuksa ma w nazwie „sh”, możesz potoku wynik polecenia ls z grep.

ls /bin | grep „sz”

Do przekierować wyjście z polecenia do pliku, Użyj > operator. Na przykład, aby wysłać wyjście polecenie ls do nazwy pliku lista plików:

ls > lista plików

ten >> operator dołącza dane wyjściowe do istniejącego pliku lub tworzy go, jeśli nie istnieje. Aby zapobiec przypadkowemu nadpisaniu pliku, możesz ustawić opcję „noclobber” w Bash:

ustaw noclobber

Możesz również nakazać programowi pobieranie danych wejściowych z pliku za pomocą < operator. Program cat może wydrukować zawartość pliku, pobierając dane wejściowe z pliku i wysyłając dane wyjściowe na standardowe wyjście.

kot < plik

Oczywiście możesz po prostu użyć cat i podać ścieżkę pliku jako argument, ale to tylko przykład.

Standardowy błąd można przekierować za pomocą deskryptora pliku lub liczby odpowiadającej jednej z form standardowego I/0. W przypadku deskryptorów plików 0 to standardowe wejście, 1 to standardowe wyjście, a 2 to standardowy błąd. Składnia w Bash to [deskryptor pliku]>. Warto przekierować błąd standardowy do /dev/null aby pozbyć się błędów:

linux_command 2> /dev/null

Możesz przekierować zarówno standardowe wyjście, jak i wejście jednocześnie za pomocą &>, co jest przydatne, jeśli chcesz wysłać wiadomość e-mail lub post na forum z opisem problemu, który masz z programem:

linux_command &> plik

Standardowe we/wy działa wszędzie

Nawet w dzisiejszych środowiskach graficznych standardowe I/O pozostaje ważne, ponieważ nadal jest uniwersalnym interfejsem, od komputera stacjonarnego do serwera i urządzenia mobilnego, opartym na tekście ASCII.

Co to jest tekst ASCII i jak jest używany?

Tekst ASCII wydaje się tajemniczy, ale ma wiele zastosowań w Internecie.

Czytaj dalej

UdziałĆwierkaćE-mail
Powiązane tematy
  • Linux
  • Wyjaśnienie technologii
  • Podstawowe informacje o Linuksie
  • Powłoka Bash dla Linuksa
O autorze
David Delony (62 opublikowane artykuły)

David jest niezależnym pisarzem mieszkającym w północno-zachodnim Pacyfiku, ale pierwotnie pochodzi z Bay Area. Od dzieciństwa jest entuzjastą technologii. Zainteresowania Davida obejmują czytanie, oglądanie wysokiej jakości programów telewizyjnych i filmów, gry retro i zbieranie nagrań.

Więcej od Davida Delony

Zapisz się do naszego newslettera

Dołącz do naszego newslettera, aby otrzymywać porady techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!

Kliknij tutaj, aby zasubskrybować