Se sei un fan degli script di shell su macOS, Probabilmente hai notato come l'esecuzione di uno ti lascerà con una finestra di Terminale inutile dopo il completamento. Puoi risolvere questo problema dalle impostazioni del terminale.
Questo metodo funziona solo se stai avviando uno script di shell al di fuori di bash, come fare clic su di esso nel Finder o impostare un tasto di scelta rapida personalizzato per aprire il programma. Caso opposto, tornerà al prompt dei comandi. Puoi sempre usare killall Terminal
per far chiudere l'app Terminale dall'interno di uno script, ma questo chiuderà tutte le finestre di Terminale aperte, quindi non è l'ideale.
Modifica questo comportamento nelle impostazioni del profilo
Apri l'applicazione Terminale dal Dock o dalla cartella Applicazioni, quindi apri le impostazioni premendo Comando + Coma.
Nella finestra Impostazioni, passa alla scheda Profili. Il profilo predefinito (quello in alto) dovrebbe essere selezionato per impostazione predefinita. Nella giusta configurazione, clicca sulla scheda “Guscio” , quindi fare clic sul menu a discesa “Quando la shell esce”.
Per impostazione predefinita, il menu a discesa è “Non chiudere la finestra”, ma vorrai cambiarlo in “Chiudi se la shell è uscita in modo pulito”.
Puoi anche chiuderlo ogni volta, ma in questo modo riceverai comunque un messaggio di errore se una procedura esce con uno stato di uscita diverso da zero. Nota che potresti dover uscire dallo script in modo esplicito con il tasto exit
comando per ottenere questo comportamento in tutti i casi.
Anche se stai partendo da Finder, il comando di output viene aggiunto automaticamente allo script.
In alternativa, usa iTerm
iTerm2, un popolare sostituto del terminale per macOS, chiuderà automaticamente la finestra all'uscita di uno script di shell. Se utilizzi già iTerm come terminale predefinito, Potresti aver notato che gli script di shell avviati da Finder sono ancora aperti con l'app Terminale standard. Ciò significa che avrai ancora lo stesso problema a meno che non configuri gli script per l'apertura con iTerm.
Puoi modificare gli script delle app in cui aprirsi facendo clic con il pulsante destro del mouse sullo script nel Finder e quindi selezionando “Ottenere informazioni”.
Ci sarà un menu a discesa per cambiare ciò con cui si apre questo script. Impostalo su iTerm e premi “cambiare tutto” per applicare questa modifica a ogni script.
Per impostazione predefinita, se hai già una finestra iTerm aperta, inizierà in una scheda separata invece che in una finestra separata, e la scheda si chiuderà automaticamente quando è pronta.