如何通过终端打开/关闭LED?


11

我想打开/关闭一些在Linux上运行命令的led。

我使用Ubuntu 12.04 LTS。

我试过了

xset led named "Scroll Lock"
xset led named "Num Lock"
xset led 2             (this is the number of Scroll Lock as `xset q` says)
xset led 1

但没有任何效果。

试过了

setleds +num
setleds +scroll

但我收到一条错误消息,说Error reading the current settings of flags. Maybe you're not on the console?(我在一个终端中)。

那么,我该如何执行呢?

Answers:


9

xdotool键Num_Lock

是答案(您最容易找到的答案);反转状态,如果您真的只想设置led状态,它还提供了搜索路径(xinput和修改从属键盘状态)。

最近,我也碰到了Num Lock键盘LED和X11状态不同的情况(发生在远程桌面,游戏等情况下)

该参考资料说明了所发生的情况,并且几乎提供了完整的解决方案(但是有案例类型,您需要Num_Lock而不是Num_lock)。

http://blog.ssokolow.com/archives/2013/04/18/how-to-invert-your-x11-numlock-led/


这应该是公认的答案。我见过的最好的解决方案。谢谢!灯光太烦人了!
jocap

请注意,这xdotool key Num_Lock不像打开或关闭LED一样简单。这相当于实际按下键!
Serge Stroobandt

5

要在运行时打开滚动锁定指示灯:

xset -led 2 led on

要关闭它,请运行:

xset -led 2 led off

1

Ctrl+ Alt+ F1,登录,然后尝试setleds


有趣。setleds(不xset)现在也为我工作。看来我们需要设置一个display。我尝试了几件事,但没有任何效果。但是,看起来我们差不多了。
GarouDan 2012年

2
这不是我的最终答案,因为我需要在gui显示而不是在控制台显示上进行此操作。
GarouDan

0

如果没有,请安装xf86-input-keyboard。

kbd_mode -u

确保您没有KB的多个实例(检查XINPUT:报告)。


0

该答案所述,如果您的屏幕位于TTY1上,但是您尝试从其他位置(例如SSH会话)控制LED,则可以setleds按以下方式使用:

setleds -L +num +caps +scroll < /dev/tty1

-1

只需使用以下命令:

numlockx on 

要么

numlockx off

改变状态。


4
这很简短:更多细节会有所帮助。例如,此命令在什么情况下有效?
David Richerby

它确实听起来像。
2015年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.