在笔记本电脑的外接电源停电时,如何实时获取这个电源事件?然后再按设定的时间或电量,执行关机程序
非实时的我看可以用acpi命令, acpi -a可以看到外接电源状态。但是,这样就只能写个定时脚本,比如每分钟执行一次。
有没有更好的实时的办法,或者一个现成的程序,在ac电源断开时,自动执行某个脚本?
如果只能采用定时执行的办法,比如每分钟查一下
acpi -a
但停电时,要延长几分钟关机的话,这期间每分钟仍在重新执行脚本,似乎有冲突,作一个文件标记似乎也行,但总是不爽?或者设置一个环境变量,但变更作用域似乎不及于另一个脚本?
如何实时获取电源事件?
-
- 帖子: 153
- 注册时间: 2006-10-10 11:01
- vickycq
- 帖子: 4507
- 注册时间: 2011-03-20 13:12
- 系统: Debian
- 来自: 山东省寿光县
- 联系:
Re: 如何实时获取电源事件?
可尝试使用 udev 或 acpid 事件
0. 使用 acpid
使用命令 'acpi_listen' 找出断开电源适配器的 acpi 事件,并在 /etc/acpi/events/ 中定义事件钩子。
参考 https://wiki.archlinux.org/index.php/Ac ... ple_events
1. 使用 udev
在 /etc/udev/rules.d 中建立 udev 规则,针对您的电池设备 sys 节点中的相应属性字段做动作。
参考 http://stackoverflow.com/questions/1506 ... sconnected
0. 使用 acpid
使用命令 'acpi_listen' 找出断开电源适配器的 acpi 事件,并在 /etc/acpi/events/ 中定义事件钩子。
参考 https://wiki.archlinux.org/index.php/Ac ... ple_events
1. 使用 udev
在 /etc/udev/rules.d 中建立 udev 规则,针对您的电池设备 sys 节点中的相应属性字段做动作。
参考 http://stackoverflow.com/questions/1506 ... sconnected
Debian 中文论坛 - forums.debiancn.org
欢迎所有 Debian GNU/Linux 用户
欢迎所有 Debian GNU/Linux 用户