Wenn Sie ein Fan von Shell-Skripten auf macOS sind, Sie haben wahrscheinlich bemerkt, dass Sie beim Ausführen eines Terminalfensters nach Abschluss ein nutzloses Terminalfenster erhalten. Sie können dies in den Terminaleinstellungen beheben.
Diese Methode funktioniert nur, wenn Sie ein Shell-Skript außerhalb von bash starten, im Finder darauf klicken oder einen benutzerdefinierten Hotkey setzen, um das Programm zu öffnen. Gegenteiliger Fall, wird zur Eingabeaufforderung zurückkehren. Sie können immer verwenden killall Terminal
um die Terminal-App aus einem Skript heraus schließen zu lassen, aber das schließt alle geöffneten Terminalfenster, also nicht ideal.
Dieses Verhalten in den Profileinstellungen ändern
Öffnen Sie die Terminal-Anwendung über das Dock oder Ihren Anwendungsordner, Öffnen Sie dann die Einstellungen durch Drücken von Command + Koma.
Im Einstellungsfenster, Wechseln Sie zur Registerkarte Profile. Das Standardprofil (der ganz oben) sollte standardmäßig ausgewählt sein. In der richtigen Konfiguration, klicke auf den Reiter “Hülse” y después haga clic en el menú desplegable “Cuando el shell sale”.
El menú desplegable tiene como valor predeterminado “No cerrar la ventana”, pero querrá cambiarlo a “Cerrar si el shell salió limpiamente”.
Sie können es auch jedes Mal schließen, aber auf diese Weise erhalten Sie immer noch eine Fehlermeldung, wenn eine Prozedur mit einem Exit-Status ungleich Null beendet wird. Beachten Sie, dass Sie das Skript möglicherweise explizit mit dem beenden müssen exit
Befehl, um dieses Verhalten in allen Fällen zu erhalten.
Auch wenn Sie im Finder starten, der Ausgabebefehl wird automatisch zum Skript hinzugefügt.
Alternative, iTerm verwenden
iTerm2, ein beliebter Terminal-Ersatz für macOS, schließt das Fenster automatisch, wenn ein Shell-Skript beendet wird. Wenn Sie iTerm bereits als Standardterminal verwenden, Sie haben vielleicht bemerkt, dass Shell-Skripte, die über den Finder gestartet werden, immer noch mit der Standard-Terminal-App geöffnet sind. Dies bedeutet, dass Sie immer noch das gleiche Problem haben, es sei denn, Sie konfigurieren die Skripte zum Öffnen mit iTerm.
Puede cambiar en qué aplicaciones se abren los scripts haciendo clic con el botón derecho en el script en Finder y después seleccionando “Informationen bekommen”.
Es wird ein Dropdown-Menü geben, um zu ändern, womit dieses Skript geöffnet wird. Configúrelo en iTerm y presione “Cambiar todo” para aplicar este cambio a cada secuencia de comandos.
Standardmäßig, wenn Sie bereits ein iTerm-Fenster geöffnet haben, es wird in einem separaten Tab statt in einem separaten Fenster gestartet, und die Registerkarte wird automatisch geschlossen, wenn sie bereit ist.