I don't quite understand how the computer reads this command.
cat file1 file2 1> file.txt 2>&1
If I understand, 2>&1
simply redirect Standard Error to Standard Output.
By that logic, the command reads to me as follows:
-
concatenate files
file1
andfile2
. -
send
stdout
from this operation tofile.txt
. -
send
stderr
tostdout
. -
end?
I'm not sure what the computer's doing. By my logic, the command should be
cat file1 file2 2>&1 > file.txt
but this is not correct.
Best Answer
I find it easier to think of using assignments.
>
is like=
&
is like$
You start out with
then your first example,
1> file.txt 2>&1
, doesleaving you with
If you did it the other way, again you start with
then
2>&1 > file.txt
doesso the end result is
and you've only redirected
stdout
, notstderr
.