OSX: Umgang mit einem Segmentierungsfehler für Apps, die mit „open“ begonnen haben

OSX: Umgang mit einem Segmentierungsfehler für Apps, die mit „open“ begonnen haben

Ich starte eine App aus einem Skript mit:

open /path/to/foo.app -F -g -W --args -foo bar

Wenn die Anwendung abstürzt (insbesondere bei Segmentierungsfehlern), bleibt das Fenster für immer geöffnet und die App wird nicht beendet. Wenn ich die App jedoch auf die altmodische Weise starte

/path/to/foo.app/Contents/MacOSX/foo -foo bar

es wird einfach beendet und gibt einen Fehlercode ungleich Null an das Skript zurück, was ich auch möchte. Wie kann ich dieses Verhalten (Beenden bei Segmentierungsfehler und Zurückgeben eines Fehlercodes) mit der obigen „open“-Syntax erreichen? Die Motivation besteht darin, Zugriff auf OSX-spezifische Optionen wie -F, -g, -W usw. zu erhalten.

Antwort1

Ich würde die Verwendung der Option -W vermeiden.Manpage von open:

-W Bewirkt, dass open wartet, bis die Anwendungen, die es öffnet (oder die bereits geöffnet waren), beendet wurden. Verwenden Sie es zusammen mit dem Flag -n, damit open als geeignete App für die Umgebungsvariable $EDITOR fungieren kann.

Dies könnte Ihr Problem sein.

verwandte Informationen