永久禁用 /proc/acpi/wakeup 中的所有设备

永久禁用 /proc/acpi/wakeup 中的所有设备

为了消除 acpi 问题,我需要将所有/proc/acpi/wakeup设备变量设置为禁用。

目前我正在使用acpitool/etc/rc.local 中的脚本来执行此操作...

usr/bin/acpitool -W 1 && usr/bin/acpitool -W 2 && usr/bin/acpitool -W 3 && usr/bin/acpitool -W 5 && usr/bin/acpitool -W 6 && usr/bin/acpitool -W 7 && usr/bin/acpitool -W 8 && usr/bin/acpitool -W 9

...虽然可行,但确实丑陋且粗糙。 =-/

不幸的是,acpitool手册文件没有说明如何同时设置多个设备,甚至可能不是一个选项。真的不知道。

我研究了更改 sysctl 中的设置的可能性,如中所述帖子,但没有向我显示与我需要设置为禁用的设备相关的任何变量,即:USBx 和 EUSB,或就此问题sysctl -a列出的任何其他设备。/proc/acpi/wakeup

我怎样才能以更有效的方式完成这项工作?

这一切都在 Devuan ASCII 下。

答案1

使用for循环。例如:

for i in $(seq 1 9)
do
    /usr/bin/acpitool -W $i
done

seq 1 9实际上是一个生成一系列数字的单独命令1 2 3 4 5 6 7 8 9。该$( ... )构造运行所包含的命令并使用其标准输出作为命令行的一部分。如果您愿意/需要,您可以单独指定数字,使循环的第一行成为例如for i in 1 5 7 9

相关内容