Mir ist auf die Schnelle kein Weg eingefallen, wie ich das hätte überprüfen können. Der Befehl terminiert nicht. Das habe ich als vorläufigen Indikator genommen, dass ich Recht habe.
Lasse mich aber gerne vom Gegenteil überzeugen.
Die Idee war, dass das echo eine Ente erzeugt, die über die Pipe zu cats stdin wandert, von wo cat sie auf sein eigenes stdout wirft, von wo es die Bash wieder in das stdin von cat umleitet.
Hm… ich wollte die Ente nicht ausgeben. Ich erkenne jetzt, dass das Michmich unpassend ist. Aber habe ich wenigstens Recht damit, dass das cat die Ente immer wieder aus stdin nimmt und nach stdout legt?
Mir ist auf die Schnelle kein Weg eingefallen, wie ich das hätte überprüfen können. Der Befehl terminiert nicht. Das habe ich als vorläufigen Indikator genommen, dass ich Recht habe.
Lasse mich aber gerne vom Gegenteil überzeugen.
Die Idee war, dass das echo eine Ente erzeugt, die über die Pipe zu cats stdin wandert, von wo cat sie auf sein eigenes stdout wirft, von wo es die Bash wieder in das stdin von cat umleitet.
Der Befehl gibt gar nichts aus, weil du nach
/dev/stdinschreibst.Was wolltest du erreichen? Die ewige Ente?
yes Enteder beste weg
Das was du willst ist
echo Ente | tee /dev/stdin, da tee sowohl in /dev/stdin als auch auf die Konsole schreibt.Hm… ich wollte die Ente nicht ausgeben. Ich erkenne jetzt, dass das Michmich unpassend ist. Aber habe ich wenigstens Recht damit, dass das cat die Ente immer wieder aus stdin nimmt und nach stdout legt?
@death_to_carrots@feddit.org
Das wäre mit
Allerdings hat
bashdafür anscheinend eine Schleifen-Erkennung.Hat nicht jeder Prozess sein eigenes
stdin/stderr``/stdout-Triplett?