¿Es posible programar una Mac para que duerma solo una vez? Sé que puedo establecer un horario para ello, pero quiero tener control sobre él.
De vez en cuando me voy a la cama, pero dejo un archivo transfiriéndose, y quiero que la Mac duerma dentro de una hora. Entonces, ¿cómo haría eso sin establecer un programa a largo plazo?
El pmset
comando de terminal debe hacer lo que quieras. Lo siguiente pondrá la computadora en suspensión a las 23:45:00 el 2 de diciembre de 2014. Sin embargo, el comando debe ejecutarse desde una cuenta de administrador:
sudo pmset schedule sleep "12/02/14 23:45:00"
El formato de fecha MM/DD/AA no se puede cambiar; por lo tanto, si está acostumbrado a un formato diferente, tenga cuidado.
Si hace esto regularmente, puede escribir una función y guardarla en su ~/.profile
:
# Schedule sleep in X minutes, use like: sleep-in 60
function sleep-in() {
local minutes=$1
local datetime=`date -v+${minutes}M +"%m/%d/%y %H:%M:%S"`
sudo pmset schedule sleep "$datetime"
}
sleep-in:local:2: not an identifier: 23:35:31
. Resulta (al menos en mi instalación (zsh)) que necesita envolver esa expresión de acento grave de fecha entre comillas dobles. Así que hazlo:local datetime="`date -v+${minutes}M +"%m/%d/%y %H:%M:%S"`"
function sleep-cancel-all() {\n NUM_OF_SLEEPS=$(pmset -g sched | wc -l)\n if [[ $NUM_OF_SLEEPS -gt 0 ]]; then\n # The first line of output is a header, ignore it.\n NUM_OF_SLEEPS=$(expr $NUM_OF_SLEEPS - 1)\n seq $NUM_OF_SLEEPS | xargs -Iz sudo pmset schedule cancel 0\n fi\n }
\nPor defecto no hay forma de hacerlo con las opciones que tienes en las preferencias del sistema.
Pero, podrías hacerlo desde la línea de comandos con un simple comando:
sleep 10; osascript -e 'tell application "System Events" to sleep'
sleep 10
pause la ejecución del siguiente comando durante 10 segundos. Si desea minutos u horas, debe cambiar 10 con la cantidad de segundos que desea.osascript -e 'tell application "System Events" to sleep'
poner la computadora a dormir.sleep
acepta argumentos como 10s
, 5m
, 3h
para segundos, minutos y horas respectivamente.Para el control de energía de su Mac desde su iPhone en una red local, he usado Off Remote , que también puede programar dentro de las próximas 24 horas una acción del sistema (Apagar, Bloquear, Reiniciar, Cerrar sesión, Suspender) y solo cuesta $ 3 en el iOS store, pero requiere la instalación de una aplicación de ayuda adicional en su Mac para recibir las instrucciones de la aplicación para iPhone.
Otra respuesta aquí sugirió usar el software Power Manager que cuesta $ 50, pero sugeriría el software Keyboard Maestro de $ 36 que es un poco menos intuitivo que Power Manager pero tiene una mayor flexibilidad más allá de la administración de energía. Al buscar la capacidad de programar mi Mac para que entre en reposo, recordé que tengo esta utilidad y pude arrastrar y soltar rápidamente los componentes de macro en KM para crear un script que se detuvo durante un período de tiempo determinado y luego puso mi Mac en dormir:
…también hay una acción dentro de Keyboard Maestro para programar macros (para poner Mac en suspensión, apagar, reiniciar, etc.) para que se activen en momentos designados:
Keyboard Maestro es más barato y mucho más robusto para desarrollar macros que pueden mejorar el uso de su Mac, pero hay una curva de aprendizaje un poco más que la aplicación Power Manager.
Todas las respuestas anteriores funcionan, pero si desea hacer esto con regularidad, le recomiendo el software Power Manager , que le permite configurar tiempos de suspensión personalizados, tanto para una vez como para eventos recurrentes muy fácilmente (mucho más fácilmente que usar comandos de Terminal, en mi opinión). El software es relativamente costoso ($ 50), pero hay una prueba gratuita de 30 días con todas las funciones. También puede controlar Power Manager desde su iPhone, lo cual es bueno si está lejos de su computadora pero desea configurarlo para que entre en suspensión o se apague.
Prueba man shutdown
; tiene una -s
opción para el modo de suspensión
shutdown -s <time>
donde <time>
puede estar:
now
+m
por ejemplo +180
, durante 3 horas a partir de ahorayymmddhhmm
por ejemplo 2112250000
, por el momento se convierte en Navidad (este año)
Overbryd
sudo sh -c 'wget http://download.com/file.zip; pmset sleepnow'
El comando de suspensión solo se ejecutará cuando salga wget.