Streams (stderr, stdin, stdout)
stdin
Standard In. Whatever is entered into the bash terminal
stdout
Standard Out. Whatever output was given back by the terminal.
stderr
Standard Error. Whatever error was given back by the terminal
Redirect stderr to /dev/null
You can redirect the stderr
to /dev/null
to get rid of it. You don’t care if there are errors, you don’t want to see those errors, you don’t want to log those errors, you just want them gone.
ls avdkaeudvaev 2>> /dev/null
Save both stderr and stdout
ls fileThatExists fileThatDoesNotExist > mystdoutput 2> mystderror
will save the stdout in a file called mystdoutput and save the stderr in a file called mystderror. We will get both stdout and stderr because we are listing a file that exists (stdout) and a file that doesn’t exist which will result in an error (stderr). One command, one entry, two separate files.
Uses:
- in bash scripts, you can supress outputting errors and log them to an error log instead.
/dev/null
/dev/null is nothing. It’s a black hole. When you are redirecting something to /dev/null, you are basically telling it to get lost. And it will, get lost, in the nothnigness.