Auswerten von „false“ in Bash mit mehreren Befehlen ohne Subshell

Auswerten von „false“ in Bash mit mehreren Befehlen ohne Subshell

Bash wertet die logischen Operatoren so aus, dass && immer Vorrang hat. Zum Beispiel:

false || echo 1 && echo 2
1
2

Und

true || echo 1 && echo 2
2

Ok. Nehmen wir also an, ich möchte, dass die Ausgabe so aussieht:

false || (echo 1 && echo 2)

Aber ohne eine Untershell aufzurufen.

Die einzige Lösung, die mir einfällt, ist diese:

false || if true; then echo 1; echo 2; fi
1
2

Gibt es eine sauberere Möglichkeit, ähnlich den Klammern in C, Befehle zu gruppieren, ohne eine Subshell aufrufen zu müssen?

Antwort1

false || { echo 1 && echo 2; }

verwandte Informationen