News for hackers. Stuff that matters.
Re:Bash $* and $@ (2017) by Legogris on Monday January 13, 2020 @03:33AM (#22032799)
Just in case someone's confused by this, it becomes clear if you know how pipes work. `2>&1` means "redirect stderr to whatever stdout is currently pointed to" (redirection by copy, not by reference). More recent version of bash manual[0] has a less confusing wording in the same paragraph IMO:

  Note that the order of redirections is significant. For example, the command

  ls > dirlist 2>&1

  directs both standard output (file descriptor 1) and standard error (file descriptor 2) to the file dirlist, while the command

  ls 2>&1 > dirlist

  directs only the standard output to file dirlist, because the standard error was made a copy of the standard output before the standard output was redirected to dirlist. 

[0]: https://www.gnu.org/software/bash/manual/html_node/Redirecti...

There are no comments on this comment yet.