总的来说,我试图从一个单独的 shell 将按键注入 Ubuntu 登录屏幕。我的机器(运行 Ubuntu 10.04)位于标准登录屏幕,并且我也通过 SSH 连接到该机器。我尝试了以下操作(从 SSH shell):
$ ps ax | grep X
2844 tty8 Ss+ 0:01 /usr/bin/X :0 -br -verbose -auth /var/run/gdm/auth-for-gdm-Gp2Rlq/database
$ export DISPLAY=:0
$ xdotool key Return
No protocol specified
Error: Can't open display: :0
Failed creating new xdo instance
This exact一旦机器登录到 Ubuntu,相同的方法就可以工作,但它不适用于登录屏幕。
理想情况下,我希望能够从另一个 shell 完成登录。我愿意NOT想要使用自动登录。我只想能够获取正确的显示,并执行登录所需的按键。
任何帮助将不胜感激。
Edited:
感谢 n.m 的提示。我能够让这个工作与:
export DISPLAY=:0
sudo xdotool key Return
这实现了我想要的,但现在我想知道是否有一种方法可以在没有“sudo”的情况下实现这一目标?是否有一个我可以启用/禁用的标志来解决这个问题?
再次感谢您的帮助。
您需要有权限才能连接到显示器。请注意-auth
X 命令的参数。这就是权威所在。
尝试这个:
export XAUTHORITY=/var/run/gdm/auth-for-gdm-<whatever-it-is>/database
export DISPLAY=:0
xdotool key Return
您需要成为 root 才能访问权限文件。
See man xauth
获取(很多)更多信息。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)