Invia un avviso al centro di notifica dalla riga di comando in OS X

Utilizzando un eccellente strumento di terze parti chiamato terminale-notificatore, è possibile inviare avvisi e messaggi al Centro notifiche direttamente dalla riga di comando. Questo ha una miriade di usi potenzialmente validi, ma un fantastico caso d'uso è lungo la stessa linea di annunciare verbalmente quando un comando ha completato o inviato un avviso di badge, ma invece di inviare la notifica al Centro di notifica OS X Mountain Lion.

Installazione di Terminal Notifier

Supponendo che tu abbia ruby ​​sul Mac, puoi facilmente installare terminal-notifier usando gem:

sudo gem install terminal-notifier

Per quelli senza ruby, puoi scaricare un binario pre-costruito da GitHub, ma per eseguire il terminale-notificatore devi indicarlo al binario all'interno del pacchetto di app in questo modo:

./terminal-notifier.app/Contents/MacOS/terminal-notifier

Se segui la seconda strada, dovresti creare un alias in bash_profile. Ai fini di questo articolo, assumeremo che tu l'abbia installato tramite ruby.

Utilizzo di Terminal Notifier da inviare al Centro di notifica

Una volta installato, l'utilizzo del comando nel suo nucleo di base è il seguente:

terminal-notifier -message "Hello, this is my message" -title "Message Title"

Pubblicare un messaggio dopo che un comando è stato completato è semplice, basta aggiungere il terminale-notificatore in questo modo:

ping -c 5 yahoo.com && terminal-notifier -message "Finished pinging yahoo" -title "ping"

Questi inviano una notifica non interattiva, ma scavando più a fondo puoi lanciare applicazioni, eseguire comandi di terminale e anche aprire URL.

Rendere le notifiche interattive: apertura di URL, applicazioni ed esecuzione dei comandi del terminale

Ancora meglio sono però i comandi -open e -activate, che consentono di specificare un URL o un'applicazione da attivare quando si fa clic sulla notifica. Ad esempio, questo aprirà osxdaily.com quando si fa clic:

terminal-notifier -message "Go to OSXDaily.com, it's the best website ever!" -title "osxdaily.com" -open http://osxdaily.com

I messaggi di notifica al Centro di notifica e, se cliccato, apriranno osxdaily.com nel browser Web predefinito.

Il prossimo esempio aprirà TextEdit se si fa clic sulla notifica:

terminal-notifier -message "Time to braindump into TextEdit" -title "Braindump" -activate com.apple.TextEdit

È anche possibile eseguire comandi del terminale se la notifica è interagita con:

terminal-notifier -message "Time to run your backups" -title "Backup Script" -execute backupscript

Sono solo alcuni esempi, ma ci sono ovviamente usi infiniti per una cosa del genere. Considerando quanto sia utile, sono sorpreso che Apple non abbia incluso un modo per farlo in OS X, anche se potrebbe cambiare un giorno. Nel frattempo divertiti con il terminale di notifica, è un ottimo strumento.