Stderr

From ICO wiki
Revision as of 02:57, 11 January 2017 by Labner (talk | contribs)
Jump to navigationJump to search

mustand
stderr (standard error) on UNIX süsteemides standardveavoog. Vt. ka stdin ja stdout

Standardvood

Joonis 1. The standard streams for input, output, and error. Allikas: https://en.wikipedia.org/wiki/Standard_streams

Linuxis ja teistes Unix-i laadsetes süsteemides on kasutusel standardvood. Iga protsess käivitatakse automaatselt koos kolme andmevooga: sisendvoog stdin ja väljundvoog stdout (standard output) ja veavoog stderr (standard error). Need vood kujutavad endast spetsiaalset tüüpi faili ja sisaldavad plain text andmeid.[1][2][3]

Igale avatud failile omistatakse ka arvuline deskriptor. stdin, stdout ja stderr arvulised failideskriptorid on vastavalt 0,1 ja 2. Tüüpiliselt on need vood seotud terminaliga (tty), kuid võivad ka viidata teistele failidele või seadmetele, kui protsess on vastavalt seadistatud. [4] Tavaliselt läheb standardsisendvoogu klaviatuurilt sisestatav tekst ning väljundvoog ning veavoog kuvatakse ekraanile.

stderr ümbersuunamine

Nagu standardväljundvoogki, suunatakse ka veavoog vaikimisi ekraanile ning seda saab sernaselt teiste standardvoogudega ümber suunata. Kuna standardväljundvoog ja veavoog on eraldi vood, saab neid erinevatesse kohtadesse suunata. Näiteks veavoo logifaili ja väljundvoo mõne teise programmi sisendisse.


Autor

Liina Abner
DK23
jaanuar 2017

  1. Standard Input Definition http://www.linfo.org/standard_input.html
  2. Standard Output Definition http://www.linfo.org/standard_output.html
  3. Standard Error Definition http://www.linfo.org/standard_error.html
  4. stdin(3) - Linux man page https://linux.die.net/man/3/stdin