Puedo desactivar el modo de suspensión para una aplicación específica, de modo que mi mac no van a ir a dormir hasta que la aplicación esté cerrada?
Respuestas
¿Demasiados anuncios?Si usted tiene algún interés en la ejecución de script de shell el siguiente trabajo. Sólo tienes que configurar el "Display_Sleep_Time" y "System_Sleep_Time" como quieres que sea, junto con la "App" usted está eligiendo para evitar el sueño. Al lanzar el script en cualquier momento de ejecutar la aplicación con todas sus momentos de sueño se recurrió a 0 la prevención de la pantalla y del sistema de dormir.
PROBADO EN
- 10.5.x
- 10.6.x
- 10.7.4
NOTA: ADVERTENCIA ESTE SCRIPT CONTIENE UN BUCLE INTERNO. Usted puede preferir utilizar la siguiente secuencia de comandos dentro de un Demonio, en lugar de utilizar el bucle interno de la secuencia de comandos proporciona. Sin embargo, el mismo concepto se aplica.
#!/bin/bash
watch="true"
App="Safari"
System_Sleep_Time="30"
Display_Sleep_Time="10"
System_Sleep=$(pmset -g | grep " sleep" | awk '{print $2}')
Display_Sleep=$(pmset -g | grep " displaysleep" | awk '{print $2}')
while [[ ${watch} == "true" ]]; do
watch_App=$(ps -A | grep "${App}.app" | grep -v grep | sed "s/.*${App}.*/${App}/")
if [[ ${watch_App} == ${App} ]]; then
if [[ ${System_Sleep} != "0" ]]; then
pmset -a sleep 0
System_Sleep=$(pmset -g | grep " sleep" | awk '{print $2}')
fi
if [[ ${Display_Sleep} != "0" ]]; then
pmset -a displaysleep 0
Display_Sleep=$(pmset -g | grep " displaysleep" | awk '{print $2}')
fi
elif [[ ${watch_App} != ${App} ]]; then
if [[ ${System_Sleep} == "0" ]]; then
pmset -a sleep ${System_Sleep_Time} > /dev/null 2>&1
System_Sleep=$(pmset -g | grep " sleep" | awk '{print $2}')
fi
if [[ ${Display_Sleep} == "0" ]]; then
pmset -a displaysleep ${Display_Sleep_Time} > /dev/null 2>&1
Display_Sleep=$(pmset -g | grep " displaysleep" | awk '{print $2}')
fi
else
/usr/bin/logger -i An error has occured with preventsleep.sh
fi
done
También puede agregar una línea como esta a un crontab:
* * * * * pgrep -x TextEdit && caffeinate -t 60
(Uso EDITOR=nano crontab -e
si no ha cambiado $EDITOR
y no sabe cómo utilizar vi.)
caffeinate y pgrep se agregan en Mountain Lion.
Usted puede obtener una lista de poder afirmaciones con pmset -g assertions
. caffeinate
o caffeinate -i
debe establecer PreventUserIdleSystemSleep
a 1.