1 votos

Consulta si el MacBook está enchufado o con batería desde el shell script.

Estoy escribiendo un shell script que dejaré ejecutándose en segundo plano para algunas tareas de sincronización. Me gustaría que este script se comportara de forma diferente dependiendo de si mi MacBook está enchufado a una fuente de alimentación o a la batería.

¿Existe alguna forma de determinar desde un shell script, si mi MacBook (que está ejecutando el script) está con batería o enchufado?

2voto

Abramodj Puntos 1771

Puede aprovechar la pmset (configuración de la gestión de energía) desde un script para saber si funciona con batería o con corriente alterna. Consulte las páginas del manual ( man pmset ) para más detalles.

Por ejemplo, cuando está conectado a la corriente alterna:

pmset -g ps

Now drawing from 'AC Power'
 -InternalBattery-0 (id=5898339)        79%; charging; (no estimate)     present: true

Y cuando funciona con batería:

pmset -g ps

Now drawing from 'Battery Power'
 -InternalBattery-0 (id=5898339)        79%; discharging; (no estimate) present: true

Para capturar la condición de energía actual en un bash script, utilice algo como:

[[ $(pmset -g ps|grep "AC Power") ]] && state="AC" || state="BATT"

Una forma alternativa de capturar la fuente de alimentación actual fue sugerida por @nohillside. Esto recorta directamente el token "AC" o "Battery" de pmset salida:

state=$(pmset -g ps|sed -nE "s|.*'(.*) Power.*|\1|p")

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X