Previene la sospensione del sistema mentre un processo o comando è attivo in Mac OS X

Molti utenti Mac usano programmi di utilità per impedire temporaneamente il loro computer di dormire, spesso facendo affidamento su sleep corners, lo strumento di terze parti chiamato Caffeine, pmset o, più recentemente, l'utilità della riga di comando che ora è associata a OS X chiamata caffeinate. Per impostazione predefinita, la voce del menu Caffeine e il comando caffeinate impediscono entrambi di dormire finché sono attivati ​​individualmente, molto utile per gli utenti desktop mentre si è su un Mac, ma non particolarmente utile se si desidera avere la funzione sleep di OS X dipende dal completamento di uno specifico processo o compito.

Ecco cosa tratteremo qui utilizzando la riga di comando, che sta avendo la prevenzione del sonno dipendente dal processo che blocca solo la funzione di sospensione del Mac mentre un comando, un'attività o un processo specificato è in esecuzione o attivo, quindi al termine, il computer ripristinerà le abitudini del sonno tradizionale.


Per realizzare l'evitamento del sonno specifico del comando, useremo una variazione del comando caffeina, che può prevenire il sonno in vari modi. Esamineremo alcuni esempi, ma la pagina man di caffeinate offre alcune opzioni aggiuntive che potrebbero essere desiderabili anche in altre situazioni.

Per i nostri scopi qui di rendere la prevenzione del sonno dipendente dal completamento di uno specifico comando o processo, userete il flag -i così:

caffeinate -i [command / process]

Potrebbe essere già ovvio, ma l'esecuzione del comando caffeinate in questo modo avvierà anche il comando o il processo specificato nell'argomento.

Ad esempio, se si desidera che il Mac eviti di dormire quando il comando "make" è attivo, si utilizzerà la seguente sintassi del comando:

caffeinate -i make

O forse vuoi solo evitare di dormire mentre una connessione ssh è attiva su un server specifico, e vuoi inviare il comando caffeinate sullo sfondo, quindi applicherebbe una e commerciale anche alla fine così:

caffeinate -i ssh coffeebeans &

Puoi persino eseguirlo con i tuoi script o comandi in un'altra posizione:

caffeinate -i /private/tmp/./whatisthis.sh

O per attivare la prevenzione del sonno fintanto che il browser Web Safari è in esecuzione nella GUI, si utilizza la seguente sintassi, si noti che è necessario specificare il percorso completo del file binario all'interno del file .app:

caffeinate -i /Applications/Safari.app/Resources/MacOS/Safari

Il flag -i impedisce il sonno del sistema, ma è possibile utilizzare altri flag per creare asserzioni per impedire la visualizzazione del disco o della visualizzazione. Per impedire la visualizzazione dello stato di sospensione (ovvero lo schermo che si spegne e passa alla modalità bloccata o allo screen saver), è necessario il flag -d:

caffeinate -d [command / process]

Come il flag -i, questo può essere applicato a qualsiasi attività di sistema, sia che venga eseguita dalla riga di comando o dalla GUI, ma assicurati di specificare il nome corretto con il caso corretto. Un altro esempio:

caffeinate -d telnet towel.blinkenlights.nl

Questo comando significa che finché il telnet del film ASCII di Star Wars è attivo, il display del Mac non si spegnerà. Se il telnet è uscito o Star Wars ha finito di giocare, il sistema potrebbe dormire come di solito è consentito, definito dalle impostazioni di sonno ed energia in OS X.

Naturalmente dal momento che il caffeinate è interamente basato sulla riga di comando, non sarà applicabile a tutti gli utenti, ma per coloro che passano molto tempo nel Terminal, può essere un grande trucco. Per gli utenti Mac che sono più a loro agio nell'interfaccia grafica, un efficace angolo anti-sonno e l'utilizzo dell'app Caffeine sono probabilmente le migliori scommesse per eseguire funzioni simili.

Se si desidera eseguire un'attività simile al processo simile ma evitare il terminale e la riga di comando, l'app Wimoweh ha le stesse funzioni di un menu a discesa, sebbene sia un'app a pagamento che potrebbe renderla meno desiderabile per alcuni utenti, e non offre un processo generale o un argomento di completamento di attività basato sulla riga di comando. Quindi, la caffeina con una bandiera appropriata è ancora preferita da molti.