Chiudi con grazia un'applicazione dalla riga di comando in Mac OS X
La chiusura normale delle app viene in genere eseguita tramite il menu dell'applicazione appropriato scegliendo "Esci", ma la GUI del Mac è ovviamente inaccessibile dalla riga di comando di Mac OS X. Quindi, quando la maggior parte degli utenti della riga di comando si trova di fronte alla necessità di uscire da un'applicazione, finisci usando il comando 'kill' per terminare il processo e chiudere forzatamente l'app, piuttosto che emettere un kill 'soft'.L'ovvio problema con la chiusura di un'app è che mentre esce dall'applicazione, potresti perdere dati in quel processo e anche le cache di ripristino della sessione potrebbero non essere adeguate per ripristinare i dati. Pertanto, quando possibile, di solito è meglio che gli utenti chiudano con garbo un'applicazione.
Anche se non è particolarmente noto, puoi inviare un segnale di uscita standard a qualsiasi app GUI di Mac OS X dalla riga di comando con l'assistenza del comando osascript. È abbastanza facile da usare, ed è di questo che parleremo qui.
Come chiudere con grazia le app dal terminale in Mac OS X con osascript
Ancora una volta, questo invierà un segnale di uscita standard a un'applicazione, piuttosto che un segnale di interruzione (termina). Ciò significa anche che l'applicazione di destinazione non uscirà forzatamente se sono presenti dati non salvati senza richiedere all'utente l'input (a meno che non sia abilitata l'impostazione di salvataggio automatico per Mac OS X e l'applicazione non richieda all'utente di conseguenza).
La sintassi di base per inviare un segnale di chiusura standard a un'applicazione GUI in Mac OS X da Terminal è la seguente:
"osascript -e &39;quit app APPLICATIONNAME&39;"
Ad esempio, per uscire da Calendar dalla riga di comando, sostituisci APPLICATIONNAME con "Calendar"
"osascript -e &39;esci dall&39;app Calendar&39;"
Poiché Calendar si sincronizza e non ha un'opzione di salvataggio, non ti verrà presentata la finestra di dialogo di salvataggio standard quando provi a chiudere l'app. Con le app che hanno opzioni di salvataggio e quando Mac OS X ha il salvataggio automatico disabilitato, la finestra di dialogo di salvataggio verrà richiamata come al solito.
Un altro vantaggio dell'utilizzo di osascript per chiudere le app con garbo è che puoi fornire un nome effettivo dell'applicazione, che è molto più facile da ricordare e un po' più facile da usare rispetto all'affidarsi interamente ai numeri ID del processo che accompagnano il comando di uccisione.Nota che le versioni moderne di Mac OS X offrono un comando kill migliorato che è più facile da usare, noto come pkill.
Potresti usarlo in uno script bash per chiudere le applicazioni dalla riga di comando, o persino modificarlo in modo che si comporti in modo simile al trucco "Esci da tutte le app aperte" con Automator che abbiamo trattato qualche tempo fa.