Instala el acpipaquete. Ahora pon esto return0whencharging.shy hazlo ejecutable:
#!/bin/sh
acpi -V
if cat /proc/acpi/battery/BAT1/state | grep "charging state" | grep -vE ":[\t ]*charging$"; then
exit 1
else
exit 0
fi
Si echo -e "\a"emite un sonido, comience esto cuando desee ver el estado de la batería:
watch --beep return0whencharging.sh
Si no se emite ningún sonido o si desea una notificación y una mejor alarma de reloj lo puede proporcionar, instalar libnotify-biny mpvy utilizar en su lugar:
while return0whencharging.sh; do sleep 1; done; notify-send "Finished charging" && mpv -loop /usr/share/sounds/freedesktop/stereo/alarm-clock-elapsed.oga
explicación :
Si observa grep en la página de manual , puede ver que -vinvierte la coincidencia y, por lo tanto, el código de retorno / estado. -Esignifica que es una expresión regular. el [\t ]en la expresión regular (expresión regular) significa "tabulación o espacio". La siguiente estrella significa "tabulación o espacio 0 o más veces". El "$" final significa que debe coincidir con el final de la línea. El final grepsignifica que las líneas NO terminan en ":", cualquier número de pestañas o espacios y luego "cargando" y el final de la línea debe grepsalir con el código de estado 0. Esto significa que grepdevolverá 1 siempre que la computadora esté cargando. El iflo ejecutará de primera rama cuando el código de estado es 0,grepexit 1cuando grep sale de 0 y exit 0cuando grep existe distinto de cero.
return0whencharging.sharchivo? O si lo creo, ¿hay un lugar específico donde deba guardarlo?He escrito un pequeño guión que hará eso:
Guión:
Instalación:
Correr:
Copie el script a la
~/bincarpeta ( ¿por qué la carpeta ~ / bin? ):O cópielo
/usr/local/binsi desea que esté disponible para todos los usuarios de su computadora:Luego agregue
batteryfull.shscript como una aplicación de inicio:Haga clic Addy complete de la siguiente manera:
fuente