我有一个新的Android手机,其中有许多用于通过ssh连接进行通信的应用程序。我想知道如果可以模拟按键,尤其是媒体键(播放暂停音量),是否可以使用ssh命令。我不希望不安装其他软件。
注意:我知道有些应用程序是开箱即用的,这只是为了更好地理解。
我有一个新的Android手机,其中有许多用于通过ssh连接进行通信的应用程序。我想知道如果可以模拟按键,尤其是媒体键(播放暂停音量),是否可以使用ssh命令。我不希望不安装其他软件。
注意:我知道有些应用程序是开箱即用的,这只是为了更好地理解。
Answers:
答案是xdotool
,它可能已经安装在Ubuntu系统上。它可以模拟按键。另请参见[1]。
一些命令:
播放/暂停
xdotool key XF86AudioPlay
上一页下一页
xdotool key XF86AudioPrev
xdotool key XF86AudioNext
调低/调高音量
xdotool key XF86AudioLowerVolume
xdotool key XF86AudioRaiseVolume
静音
xdotool key XF86AudioMute
有关更多XF86命令,请参见[2]。
除了逐步进行音量设置外,您还可以使用alsamixer或Pulseaudio进行设置(推荐)。假设您使用设备0(可以使用alsamixer
或进行检查pacmd list-sinks
),则可以将音量设置为例如80%
alsamixer(-c 0指定声音设备ID)
amixer -c 0 sset Master,0 80%
pulseaudio(80%前面的0是声音设备ID)
pactl set-sink-volume 0 80%
有关这些命令的更多信息,请参见其手册。
编辑:如果您正在尝试通过ssh执行xdotool命令并获得以下错误消息
Error: Can't open display: (null)
Segmentation fault
您需要设置DISPLAY变量:
export DISPLAY=':0.0'
之后,它应该可以正常工作
[1] http://www.semicomplete.com/projects/xdotool/xdotool.xhtml
[2] http://wiki.linuxquestions.org/wiki/XF86_keyboard_symbols
--clearmodifiers
标志,例如:xdotool key --clearmodifiers XF86AudioPlay
Keyboard Shortcuts
设置” 部分,并使用来在键盘快捷键和xdotool key
命令之间添加绑定--clearmodifiers
,请参见上文。