Как переключить опору устройства xinput
Я могу отключить устройство, как это:
xinput set-prop 13 "Device Enabled" 0
Но я хочу на самом деле установить пользовательский ярлык, который переключает это между 0\1. Мои навыки в bash немного ржавые, так как я могу это сделать? Там нет команды get-prop, я получил это далеко:
xinput list-props 13 | grep "Device Enabled"
Который правильно распечатывает
Device Enabled (135): 1
Но я не знаю, что делать дальше. Помогите?
1 ответ
Включите или выключите устройство xinput с помощью следующего скрипта bash.
#!/bin/bash
device=13
state=$(xinput list-props "$device" | grep "Device Enabled" | grep -o "[01]$")
if [ $state == '1' ];then
xinput --disable "$device"
else
xinput --enable "$device"
fi
Я сделал этот однострочный ответ из ответа pLumo. Это удобно, если вам просто нужна команда для ввода сочетания клавиш или запуска задания. Он использует тот факт, что вы также можете устанавливать свойства устройств по имени, и что имя сенсорной панели не изменится.
Чтобы получить имя устройства:
$ xinput | grep Touchpad
⎜ ↳ ETPS/2 Elantech Touchpad id=18 [slave pointer (2)]
Итак, мое устройство называется ETPS/2 Elantech Touchpad
. Я жестко запрограммировал это в этот однострочник:
[ "$(xinput list-props 'ETPS/2 Elantech Touchpad' | grep 'Device Enabled' | grep -o '[01]$')" == "1" ] && xinput --disable 'ETPS/2 Elantech Touchpad' || xinput --enable 'ETPS/2 Elantech Touchpad'