scriptlist=`ls $directory_/fallback_* 2> /dev/null`
What exactly is the purpose of the 2>
part of the command? I omitted it and ran the command, it just works fine.
And, if the output of ls is getting stored in /dev/null file, what exactly the variable scriptlist
will contain. When I executed the code, the output was in the variable and nothing was there in file null
. If we remove 2
, then output is in file instead of variable. Any idea what exactly this line of code doing?
The 1 denotes standard output (stdout). The 2 denotes standard error (stderr). So 2>&1 says to send standard error to where ever standard output is being redirected as well.
(other special file descriptors include 0 for standard input and 1 for standard output). 2> /dev/null means to redirect standard error to /dev/null . /dev/null is a special device that discards everything that is written to it.
The Linux operating system refers to each of these files with a unique non-negative integer. '0' for standard input. '1' for standard output. '2' for standard error.
1 "Standard output" output file descriptor. The expression 2>&1 copies file descriptor 1 to location 2 , so any output written to 2 ("standard error") in the execution environment goes to the same file originally described by 1 ("standard output").
File descriptor 2
represents standard error. (other special file descriptors include 0
for standard input and 1
for standard output).
2> /dev/null
means to redirect standard error to /dev/null
. /dev/null
is a special device that discards everything that is written to it.
Putting all together, this line of code stores the standard output of command ls $directory_/fallback_* 2> /dev/null
into the variable scriptlist
, and the standard error is discarded.
scriptlist=`ls $directory_/fallback_* 2> /dev/null`
As you have enclosed the whole line ls $directory_/fallback_* 2> /dev/null
in backticks, the output of the ls
command is stored in scriptlist
variable.
Also, the 2>
is for redirecting the output of stderr
to /dev/null
(nowhere).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With