¿Usar el comando de terminal para apagar, reiniciar y dormir mi Mac?

106

Me estoy interesando más en usar Terminal como una forma alternativa de abordar soluciones en mi Mac. He visto esta pregunta titulada "¿Hay alguna manera mejor? ¿Apagar / reiniciar OSX? ".

Por lo tanto, me gustaría saber:

¿Cómo apagar, reiniciar y dormir mi Mac usando el comando Terminal exclusivamente?

    
pregunta Simon 28.09.2013 - 11:55

3 respuestas

130

El comando que está buscando es shutdown . Esto informa a todos los usuarios de que la máquina se apagará y le indica a todas las aplicaciones que cierren archivos, etc.

El comando toma un parámetro -h, -r o -s para apagar, reiniciar o apagar la Mac.

El comando debe ejecutarse como root, por lo que debe usar sudo.

por ejemplo para reiniciar la máquina inmediatamente

sudo shutdown -r now

por ejemplo para apagar la máquina en 60 minutos

sudo shutdown -h +60
    
respondido por el Mark 28.09.2013 - 12:14
83

Apagar sin mostrar un cuadro de diálogo de confirmación:

osascript -e 'tell app "System Events" to shut down'

Apagar después de mostrar un cuadro de diálogo de confirmación:

osascript -e 'tell app "loginwindow" to «event aevtrsdn»'

Reiniciar sin mostrar un cuadro de diálogo de confirmación:

osascript -e 'tell app "System Events" to restart'

Reiniciar después de mostrar un cuadro de diálogo de confirmación:

osascript -e 'tell app "loginwindow" to «event aevtrrst»'

Cerrar sesión sin mostrar un cuadro de diálogo de confirmación:

osascript -e 'tell app "System Events" to  «event aevtrlgo»'

Cerrar sesión después de mostrar un cuadro de diálogo de confirmación:

osascript -e 'tell app "System Events" to log out'

Ir a dormir ( pmset ):

pmset sleepnow

Vete a dormir (AppleScript):

osascript -e 'tell app "System Events" to sleep'

Poner las pantallas en modo de suspensión (10.9 y posteriores):

pmset displaysleepnow

Los códigos de cuatro letras para los eventos de Apple se enumeran en AERegistry.h .

Todos los comandos anteriores de los eventos del sistema envían eventos de Apple al proceso loginwindow . loginwindow recibe los mismos eventos de Apple que el anterior cuando cierra la sesión, reinicia, apaga o pone la Mac en modo de suspensión normalmente. Consulte Preguntas y respuestas técnicas A QA1134: causar un reinicio, apagado y / o cierre de sesión programático .

Según man shutdown , shutdown -h now y shutdown -r now envían procesa una señal TERM seguida de una señal KILL .

De acuerdo con la Daemons and Services Programming Guide , cuando le indica a loginwindow que cierre la sesión, los procesos que admiten una terminación repentina reciben una señal KILL y los procesos que no admiten una terminación repentina se terminan de diferentes maneras: las aplicaciones Cocoa reciben el método de delegado applicationShouldTerminate: , aplicaciones en primer plano recibe el evento kAEQuitApplication Apple, las aplicaciones en segundo plano reciben el evento kAEQuitApplication Apple seguido por una señal KILL , y los demonios reciben una señal TERM seguido por una señal KILL después de unos segundos.

    
respondido por el user495470 28.09.2013 - 21:36
-10

también es útil, para cerrar sesión en la línea de comandos de la terminal, escriba 'exit':

[host:~user]$ exit
    
respondido por el holbein 09.01.2016 - 13:06

Lea otras preguntas en las etiquetas