[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Ausgabeumleitung funktioniert (mal wieder) nicht



Andreas Pakulat <apaku@gmx.de> wrote: 
> 
> Genau das hatte Frank beschrieben, wenn auch nicht so richtig gut.
> 2>&1 leitet stderr auf stdout um, was in dem Moment noch dein Terminal
> ist. Erst danach leitest du stdout in eine Datei um. 

Eigentlich funktionieren die beiden redirects zeitgleich?
Wenn ja, warum macht die Reihenfolge dann einen Unterschied?
Wenn nein, dann dürfte sich der Unterschied doch eher auf millisekunden
beschränken, so dass z.B. der erste Fehler, so er gleich am Anfang
kommt, auf stdout ankommt und dann aber alles weiter doch in die Datei?

> Aber das steht
> auch in der manpage der Bash - "order matters".
Ja, weiß ich, nur verstehe ich noch nicht ganz wie und warum.
Also, in "ls > dirlist 2>&1" sind zwei getrennte redirects. 
Das "2>&1" leitet dabei stderr auf stdout um.
in "ls 2>&1 > dirlist" sind ebenfalls zwei getrennte redirects.
Aber das "2>&1" leitet nur eine Kopie um?
Ist das so gedacht, das zwei identische Ausdrücke kontextabhängig
verschiedenes tun? Oder hab' ich da immer noch einen Denk-Fehler?


Ulrich

P.S. Für mich klingt das so als wenn ich woanders rauskomme je nachdem,
ob ich erst 2 Meter vor und dann 3 Meter zu Seite laufe oder
umgekehrt?!? 



Reply to: