I Linux går fejludgang typisk til
standardfejl (STDERR) . Dette er en separat outputstrøm fra
standardudgang (stdout) , hvor det normale programproduktion går.
Sådan fungerer det:
* Standard output (stdout) bruges til normal programudgang, såsom tekst, resultater af beregninger og andre data, som programmet har til hensigt at vise.
* standardfejl (stderr) bruges til fejlmeddelelser, advarsler og anden information, der indikerer et problem eller uventet opførsel.
Ved at adskille disse to vandløb kan du:
* Direkte forskellige output til forskellige steder: For eksempel kan du muligvis sende normal output til en fil- og fejlmeddelelser til konsollen.
* Brug værktøjer til at filtrere eller behandle output: Du kan bruge værktøjer som `grep 'eller' awk 'til at udtrække specifikke oplysninger fra stdout eller stderr.
Her er et praktisk eksempel:
`` `bash
Denne kommando udskriver output til terminalen
ls -l /tmp
Denne kommando udskriver output til en fil, men fejl vil stadig gå til terminalen
ls -l /tmp>
output.txt
Denne kommando omdirigerer både output og fejl til en fil
ls -l /tmp>
output.txt 2> &1
`` `
nøglepunkter at huske:
* Standard: Medmindre omdirigeret, vises både stdout og stderr på terminalen.
* omdirigering: Du kan omdirigere stdout og stderr ved hjælp af henholdsvis `>` og `2>` operatører.
* Fejlmeddelelser: Fejlmeddelelser går typisk til STDERR, selvom stdout omdirigeres.
At forstå forskellen mellem stdout og stderr er afgørende for styring og analyse af output i Linux.