Hallo Liste,
heute hat mich mein intuitives Verständnis der shell in die Irre geführt und einiges an Zeit gekostet, um den "Fehler" zu finden. Um euch den Spaß nicht zu vorzuenthalten, hier ein kurzes Quiz, das jeder für sich selbst beantworten kann und dabei eventuell auch etwas Neues über die shell lernt:
1. Welche Ausgabe wird für folgendes shell-Fragment generiert?:
( set -e; echo Foo; false; echo Bar ); echo Baz
a) "Foo\n" b) "Foo\nBaz\n" c) "Foo\nBar\nBaz\n"
2. Welche Ausgabe wird durch eine leichte Modifikation generiert?:
( set -e; echo Foo; false; echo Bar ) && echo Baz
a) "Foo\n" b) "Foo\nBaz\n" c) "Foo\nBar\n" d) "Foo\nBar\nBaz\n"
1 sollte intuitiv klar sein, aber bei 2 habe ich echt verzweifelt.
Viel Spaß bei Knobeln (oder einfach ausprobieren), Mathias