Ich habe Probleme mit der Umleitung in tcsh.
Beachten Sie die folgenden Befehle: vi --version
und vi --xxx
. Nehmen wir an, dies befindet sich auf einem Computer, auf dem vi
die --version
Option unterstützt wird. Die Option --xxx
ist ungültig und vim
sollte daher etwas über anzeigen stderr
.
Aus diesem Grund sollte die Verwendung 2> /dev/null
mit diesen beiden Befehlen eine Ausgabe für den gültigen Fall und keine Ausgabe für den ungültigen Fall ergeben.
Und das ist , was sehe ich in bash, zsh, KSH, und Strich.
$ 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)
...
Wenn ich dies jedoch in tcsh versuche, wird in beiden Fällen keine Ausgabe ausgegeben .
$ vi --xxx 2> /dev/null
$ vi --version 2> /dev/null
(there is no output here)
Was geht hier vor sich? Leite ich stderr
falsch um?
Hier ist die Ausgabe von tcsh --version
:
tcsh 6.18.01 (Astron) 2012-02-14 (i686-intel-linux) options wide,nls,dl,al,kan,rh,nd,color,filec