Ralf Steck wrote:
<kommando> stderr -> Terminal, stdout -> Terminal >>/foo.txt stderr -> Terminal, stdout = /foo.txt 2>&1 stderr = stdout (d.h. /foo.txt), stdout -> /foo.txt
Erst wird stdout auf /foo.txt umgeleitet und danach stderr dorthin, wo stdout im Moment hinzeigt (also auch /foo.txt).
Aber warum ist in Zeile 2 sterr dann nicht schon auf dem terminal "verschwunden", sondern kann nachträglich in Zeile 3 zurückgeholt werden?
Oh, ich habe das Ganze immer Pipe-artig 1 | 2| 3 (jeder Schritt arbeitet mit der Ausgabe des vorigen Schritts), aber das ist es gar nicht, oder?
[Sorry fuers TOFU von vorhin, das war noch pre-coffee]
...weil es eben keine Pipe ist sondern eine einzige Kommandozeile, die von der Shell erst Mal von links nach rechts ausgewertet und ergaenzt und erst *danach* ausgefuehrt wird, wobei die zu dem Zeitpunkt gueltigen Filedeskriptoren zur Anwendung kommen
frank