What is the difference between the following commands?
ssh myhostname "command1; command2;...commandn;" 2>/dev/null
ssh myhostname "command1; command2;...commandn;"
what does 2>
mean?
what does /dev/null
mean? I read somewhere that result of command will be write to file /dev/null
instead of console! Is it right? It seems strange for me that the name of file be null
!
2>
means "redirect standard-error" to the given file.
/dev/null
is the null file. Anything written to it is discarded.
Together they mean "throw away any error messages".
1 is stdout. 2 is stderr.
Then sometimes you find 2>&1
, that means redirecting stderr to stdout.
'/dev/null' essentially means "into the void", discarded. The 2
you mention refers to error output, where it should be directed.
2> means sending standard error to something
/dev/null means a bin
1) Pipe everything on standard error to /dev/null (so ignore it and don't display it)
2) Dev null just points to nowhere, pipe anything to that, and it disappears.