Aar*_*hif 29 command-line media
我有一部新的 android 手机,它有许多用于通过 ssh 连接进行通信的应用程序。我想知道是否可以使用 ssh 命令,如果我可以模拟按下的键,特别是媒体键(播放暂停音量)。我不想安装额外的软件。
注意:我知道有些应用程序可以开箱即用,这只是为了更好地理解。
Ger*_*ger 54
答案是xdotool
,它可能已经安装在您的 Ubuntu 系统上。它可以模拟按键。另见[1]。
一些命令:
播放/暂停
xdotool key XF86AudioPlay
Run Code Online (Sandbox Code Playgroud)上一页下一页
xdotool key XF86AudioPrev
xdotool key XF86AudioNext
Run Code Online (Sandbox Code Playgroud)降低/提高音量
xdotool key XF86AudioLowerVolume
xdotool key XF86AudioRaiseVolume
Run Code Online (Sandbox Code Playgroud)沉默的
xdotool key XF86AudioMute
Run Code Online (Sandbox Code Playgroud)有关更多 XF86 命令,请参阅 [2]。
您还可以使用 alsamixer 或 pulseaudio(推荐)设置音量,而不是逐步调整音量。假设您使用设备 0(您可以使用alsamixer
或进行检查pacmd list-sinks
),您可以将音量设置为例如 80%
alsamixer(-c 0 指定声音设备ID)
amixer -c 0 sset Master,0 80%
Run Code Online (Sandbox Code Playgroud)pulseaudio(80%前面的0是声音设备id)
pactl set-sink-volume 0 80%
Run Code Online (Sandbox Code Playgroud)有关这些命令的更多信息,请参见它们的联机帮助页。
编辑:如果您尝试通过 ssh 执行 xdotool 命令并收到以下错误消息
Error: Can't open display: (null)
Segmentation fault
Run Code Online (Sandbox Code Playgroud)
您需要设置 DISPLAY 变量:
export DISPLAY=':0.0'
Run Code Online (Sandbox Code Playgroud)
之后它应该可以正常工作
[1] http://www.semicomplete.com/projects/xdotool/xdotool.xhtml
[2] http://wiki.linuxquestions.org/wiki/XF86_keyboard_symbols