yes
Ich fragte mich, was der Befehl wohl nützen könnte, stolperte über diesen Kommentar und versuchte, ihn auszuführen
yes $(yes yes)
Soweit ich yes
weiß , sollte dies einfach eine unendliche Folge von ausgeben , aber stattdessen wird nichts ausgegeben und mein Grafikterminal stürzt nach einigen Sekunden ab. (Wenn ich es auf tty1 ausführe, sehe ich nach einiger Zeit die Anmeldeaufforderung.)
Was passiert hier?
yes
nie zurückgegeben.xargs
:yes yes | xargs -P 0 yes
(oder ohne-P 0
für Single-Process Infinity)Antworten:
Zum Laufen sollte es schon reichen
Der
$(...)
führt den inneren Befehl aus, bis er beendet ist, und erfasst alle seine Ausgaben. - Dayes
Bash nun eine lange Zeit läuft und eine Menge Output erzeugt, wird es irgendwann keinen Speicher mehr geben und abstürzen.quelle
Um die Meldung für den Fehler anzuzeigen, durch den Ihre Shell geschlossen wird, müssen Sie eine Sub-Shell ausführen.
quelle