通过 SSH 将按键信息发送到远程 X 会话

通过 SSH 将按键信息发送到远程 X 会话

因此,我坐在客厅里,一边使用 Ubuntu 笔记本电脑工作,一边看由 Ubuntu HTPC 控制的电视。我设置了一个红外遥控器,99% 的时间里,我可以用它来控制我需要的一切。

但是,在遥控器上输入文本并不容易。我不需要经常这样做,但当我这样做时,感觉走 15 英尺去插入 USB 键盘并以这种方式输入更容易。但是……我懒得要命,而且从医学上来说也是如此,我觉得走任何距离都是不必要的,这向机器人表明它们赢了。我不再多说了!

我可以通过 SSH 顺利进入 HTPC...现在,我如何将按键信息发送到远程计算机的 X 会话?

我应该说一下,我知道我可以使用 VNC,但电视是 1080p,笔记本电脑是 720p,所以这会带来一些缩放问题。从技术层面上讲,我更希望有一种解决方案,可以让我暂时将笔记本电脑变成远程键盘。

答案1

您应该能够使用xdotool命令执行此操作,在指定适当的 X 显示后,例如模拟当前活动窗口中的单个“向下箭头”按下

$ DISPLAY=:0 xdotool getactivewindow key Down

要输入文字,您可以使用xdotool type <string>例如

$ DISPLAY=:0 xdotool getactivewindow type 'your text here'

xdotool包应该可从 Universe 存储库获得。

答案2

使用x2x一些 X11 转发,我让它工作了。

ssh -X htpc x2x -to :0

目前唯一的缺点是我必须进入 TTY 才能终止 SSH 以退出它。我仍然在寻找如何在完成后退出!除此之外,这是一种将输入从一台计算机传输到另一台计算机的相当好且简单(且快捷)的方法。

编辑:添加后,-nomouse我就可以关闭转发的x2x窗口,并且我可以取消焦点以快速返回到其他事物,而无需关闭连接。

相关内容