I'm running into issues with redirection in tcsh.
Consider the following commands: vi --version and vi --xxx. And let's assume this is on a machine where vi supports the --version option. The option --xxx is invalid, and therefore vim should display something via stderr.
By that reasoning, using 2> /dev/null with both of these commands should give output for the valid case and no output for the invalid case.
And that is what I see in bash, zsh, ksh, and dash.
$ vi --xxx 2> /dev/null
$ vi --version 2> /dev/null
VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Oct 20 2014 16:09:17)
...
However, when I try this in tcsh, it gives me no output in both cases.
$ vi --xxx 2> /dev/null
$ vi --version 2> /dev/null
(there is no output here)
What is going on here? Am I redirecting stderr incorrectly?
Here is the output of tcsh --version:
tcsh 6.18.01 (Astron) 2012-02-14 (i686-intel-linux) options wide,nls,dl,al,kan,rh,nd,color,filec
sh -c 'cmd 2> /dev/null'– Stéphane Chazelas Apr 22 '15 at 13:55