Obstajajo trije opisniki datoteke - stdin (standardni vhod), stdout (standardni izhod) ter stderr (standardni izhod za napake).
V osnovi lahko:
Majhno pojasnilo za predstavo o teh stvareh: z ukazom less si lahko ogledate tako stdout (ki bo ostal v medpomnilniku) kot stderr, ki se bo izpisal na zaslon, vendar bo izginil, ko se boste poskušali premikati po medpomnilniku.
To bo preusmerilo izhodni tok programa v datoteko.
ls -l > ls-l.txt
V tem primeru bo ustvarjena datoteka z imenom 'ls-l.txt', ki bo
vsebovala tisto, kar bi se sicer izpisalo na zaslon, ko bi pognali
ukaz 'ls -l'.
Takole lahko standardni izhod za napake preusmerimo v datoteko.
grep da * 2> grep-napake.txt
Ustvarjena bo datoteka z imenom 'grep-napake.txt', v njej pa bo
vse, kar bo ukaz 'grep da *' izpisal na stderr.
Tukaj bomo izhodni tok stdout preusmerili v isti opisnik datoteke kot stderr.
grep da * 1>&2
Del izpisa, ki bi sicer šel na stdout, bo v tem primeru preusmerjen
na stderr.
To bo povzročilo, da bo izhodni tok stderr preusmerjen v isti opisnik datoteke kot stdout.
grep * 2>&1
Stderr del izhodnega toka bo tako preusmerjen na standardni izhodni
tok - če boste ta ukaz preko cevovoda povezali s programom less,
boste opazili, da bodo vrstice, ki navadno 'izginejo' (ker so
izpisane na stderr), tokrat ostale vidne (ker smo jih preusmerili na
stdout).
Celoten izhodni tok programa bomo preusmerili v datoteko. To včasih pride prav pri izvajanju opravil v cron-u, ko želite ukaz "utišati".
rm -f $(find / -name core) &> /dev/null
Ta ukaz (še vedno smo pri vnosu v cron) bo izbrisal vse datoteke z
imenom 'core', ki se bodo nahajale v kateremkoli imeniku. Naj vas
opozorim, da morate biti precej gotovi glede tega, kaj bo ukaz
storil, vkolikor boste njegov izhod zavrgli.