Estoy buscando una aplicación de apagado automático que apague la computadora a la fuerza en un momento designado.
La parte más importante de esto es que el cierre no debe ser cancelable (a menos que el proceso sea extremadamente oneroso).
Ok, más allá de mi respuesta anterior, puedo guiarlo para obtener cron (un servicio de programación UNIX integrado) para ejecutar un comando de apagado programado para usted.
Se ejecutará como root y será forzado.
sudo crontab -e
Deberá ingresar su contraseña de inicio de sesión y luego presionar enter.
Ahora estarás en un editor de texto (vim). Introduzca con cuidado las siguientes pulsaciones de teclas.
Digamos que desea que la máquina se apague a las 2 am todos los días, ahora ingresaríamos:
* 2 * * * /sbin/shutdown -h now
Si quisiera que la máquina se apagara a las 2:30 am todos los días, ingresaría:
30 2 * * * /sbin/shutdown -h now
Ahora debería regresar a la línea de comando donde comenzó.
¡Ya terminaste!
sudo
ahí? Sé que eso probablemente hará que se cuelgue, pero estoy bastante seguro de que tienes que ser root para ejecutarlo shutdown
.shutdown
es en /sbin
el que probablemente no esté en el $PATH predeterminado de cron. Para solucionarlo, sudo crontab -e
vuelva a hacer lo mismo, escriba dd
para eliminar la línea (suponiendo que el archivo se parece al que vinculó anteriormente) y vuelva a ingresar la línea como 30 22 * * * /sbin/shutdown -h now
.sudo crontab -e
) y elimine la línea de apagado que agregó, luego guarde.Aunque se puede cancelar:
Deténgase en yymmddhhmm
:
shutdown -h 1109211555
Detener en 4 minutos:
shutdown -h +4
/Library/LaunchAgents/me.lri.forceshutdown.plist
:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN"
"http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>me.lri.forceshutdown</string>
<key>ProgramArguments</key>
<array>
<string>shutdown</string>
<string>-h</string>
<string>now</string>
</array>
<key>StartCalendarInterval</key>
<dict>
<key>Hour</key>
<integer>23</integer>
<key>Minute</key>
<integer>0</integer>
</dict>
</dict>
</plist>
Si el plist fuera propiedad de un usuario normal, intentar cargarlo daría como resultado el error launchctl: Dubious ownership on file (skipping)
:
sudo chown root /Library/LaunchAgents/me.lri.forceshutdown.plist
El agente se puede cargar cerrando y volviendo a iniciar sesión, o con:
sudo launchctl load /Library/LaunchAgents/me.lri.forceshutdown.plist
sudo crontab -e
`08 16 * * * /sbin/shutdown -h now`
Esto realizaría un apagado normal no forzado:
osascript -e 'tell app "System Events" to shut down'
Esto se puede programar en Preferencias del sistema > Ahorro de energía > Programar . No estoy seguro de que esto inicie un apagado forzado, tendrías que probarlo. Pero esa es una opción incorporada para automatizar el apagado/encendido programado.
También puede apagar el sistema a la fuerza con un comando de terminal (requiere root):
apagar -h ahora
Puede poner ese comando en una tarea programada de launchd o cron . Consulta este artículo para obtener más información sobre estos dos servicios.
También es posible que desee consultar una aplicación como iWannaSleep (no estoy seguro de si esto fuerza el cierre).
Puede usar shutdown
directamente para programar un apagado en cualquier momento en el futuro:
shutdown -h time
donde hora especifica una hora futura en uno de dos formatos: +número o aammddhhmm, donde el año, mes y día pueden tener los valores predeterminados del sistema actual. La primera forma baja el sistema en número de minutos y la segunda en el tiempo absoluto especificado.
Si desea apagar su Mac de manera segura a una hora programada, considere Power Manager ; se cierra muy bien sin permitir que las aplicaciones bloqueen el proceso:
Es muy difícil que una aplicación o proceso no autorizado bloquee estos pasos.
shutdown
El uso shutdown
forzará el cierre de todos los procesos en su Mac, incluidas las aplicaciones gráficas. Para muchas aplicaciones, este es un comportamiento agresivo y no brinda a la aplicación muchas oportunidades para guardar el estado o los datos.
Power Manager incluye una tarea del asistente de programación para cerrar según una programación .
Divulgación: trabajo con la empresa que fabrica Power Manager.
cd ~/Downloads/
curl --remote-name http://dl.dropbox.com/u/18414/ase/com.tjluoma.forceshutdown.plist
# vea la nota abajo
sudo mv com.tjluoma.forceshutdown.plist /Library/LaunchAgents
sudo chown root:wheel /Library/LaunchAgents/com.tjluoma.forceshutdown.plist
sudo launchctl load /Library/LaunchAgents/com.tjluoma.forceshutdown.plist
Tal como está escrito, el plist hará que la computadora se apague a las 11 p.m. (hora local) todos los días.
Si desea cambiar la hora, edite el script en cualquier editor de texto. Cambie las teclas de Hora y Minuto, extraídas aquí:
<dict>
<key>Hour</key>
<integer>23</integer>
<key>Minute</key>
<integer>0</integer>
</dict>
(tenga en cuenta el uso del tiempo de 24 horas)
Echaría un vistazo a esta nota técnica de Apple
TJ Luoma
benwiggy
Harry
Harry
mateo ribeiro
graham miln
Harry
mateo ribeiro