Standardní streamy

Standardní vstupně-výstupní toky v systémech , jako je UNIX (a některé další), jsou procesní vlákna , která mají vyhrazené číslo (handle) pro provádění některých „standardních“ funkcí. Obvykle (i když ne nutně) jsou tyto úchyty již otevřené v době, kdy je úloha ( spustitelný soubor ) spuštěna.

Standardní vstup

Tok číslo 0 (stdin) je vyhrazen pro čtení uživatelských příkazů nebo vstupu.

Při interaktivním spuštění programu je ve výchozím nastavení cíleno na čtení z textového zařízení uživatelského rozhraní ( klávesnice ). UNIXový shell (a shelly jiných systémů) vám umožňuje změnit cíl tohoto proudu pomocí <znaku " ". Systémové programy ( démoni atd.) toto vlákno obecně nepoužívají.

Standardní výstup

Proud číslo 1 (stdout) je vyhrazen pro výstup, obvykle (i když ne nutně) text .

Při interaktivním spouštění je program standardně zaměřen na zápis na zobrazovací zařízení ( monitor ). UNIXový shell (a shelly jiných systémů) umožňuje přesměrovat tento proud pomocí >znaku " ". Nástroje pro spouštění programů na pozadí (např. nohup ) obvykle přesměrovávají tento proud do souboru .

Standardní chybový výstup

Stream číslo 2 (stderr) je vyhrazen pro zobrazování diagnostických a ladicích zpráv v textové podobě.

Nejčastěji je účel tohoto proudu stejný jako stdout, na rozdíl od něj se však účel proudu stderr nemění při „ >“ a vytváření rour („ |“). To znamená, že ladicí zprávy procesu, jehož výstup je přesměrován, se stále dostanou k uživateli. UNIXový shell vám umožňuje změnit cíl tohoto proudu pomocí 2>konstrukce " ". Například pro potlačení výstupu tohoto streamu není neobvyklé napsat "2> /dev/null ".

Funkce zpracování chyb POSIX perror se používá v programovacích jazycích C a C++ k vytištění chybové zprávy do stderr na základě posledního čísla chyby uloženého v errno .

Ostatní

V DOSu lze také použít čísla 4 (stdprn) a 5 (stdaux) [1] .

Viz také

Poznámky

  1. Ray Duncan. Pokročilé programování MS-DOS. — 2. vydání. - Microsoft Press, 1988. - S. 309. - ISBN 1-55615-157-8 .

Další informace