为了消除 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
。