Моделюйте медіа-ключі в терміналі


25

У мене є новий андроїд-телефон, у якому є ряд додатків для спілкування через ssh-з'єднання. Мені хотілося б знати, чи можу я використовувати ssh команди, чи зможу імітувати натиснуті клавіші, зокрема медіа-клавіші (відтворити гучність паузи). Я вважаю за краще не встановлювати додаткове програмне забезпечення.

Примітка. Я знаю, що існують додатки, які роблять це невдало. Це просто для кращого розуміння.

Відповіді:


44

Відповідь є 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 вказує ідентифікатор звукового пристрою)

    amixer -c 0 sset Master,0 80%
    
  • pulseaudio (0 перед 80% - ідентифікатор звукового пристрою)

    pactl set-sink-volume 0 80%
    

Для отримання додаткової інформації про ці команди дивіться їхні програми.


EDIT: Якщо ви намагаєтеся виконувати команди xdotool над ssh та отримуєте таке повідомлення про помилку

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


Що потрібно для цього для роботи над SSH? Використання цих команд у віддаленій оболонці призводить до моделювання на локальній та віддаленій машині.
— земляLon

3
@earthmeLon Ви впевнені, що виконуєте команду на віддаленій машині? Тому що для мене це чудово працює над ssh. Мені потрібно було встановити змінну DISPLAY, хоча дивіться мою редагування.
— Герхард Бургер

Встановлення дисплея, як ви запропонували, як вирішена проблема. Дякую: D
— earthmeLon

2
Зауважте, що коли ви прив’язуєте їх до деяких клавіш у xfce4, вам потрібно буде використовувати --clearmodifiersпрапор, приблизно так:xdotool key --clearmodifiers XF86AudioPlay
— cab404

Що згадане @ cab4040 також стосується GNOME. Якщо ви хочете додати спеціальні медіа-клавіші на клавіатурі, у якій їх не вистачає, можна перейти до Keyboard Shortcutsрозділу в налаштуваннях та додати прив'язку між комбінацією клавіш та xdotool keyкомандою --clearmodifiers, див. Вище.
— П’єр Таламі
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.