Skip to content

Latest commit

 

History

History
115 lines (101 loc) · 4.36 KB

使用shell切换触摸板的方法.org

File metadata and controls

115 lines (101 loc) · 4.36 KB

使用shell切换触摸板的方法

我们可以使用 xinput 来管理输入设备。

首先我们使用 xinput list 来获取输入设备的id号:

xinput list

触摸板的关键字是 TouchPad,因此我们可以通过下面命令来获取触摸板的id号:

xinput list | grep -iEo 'touchpad.*id=[0-9]{1,2}' | grep -Eo '[0-9]{1,2}'

下一步我们通过这个id号查看对应设备的状态:

xinput list-props 13

这里 Device Enabled (162): 1 中的 1 就是状态. 所以我们可以通过下面命令来获取状态

xinput list-props 13|grep 'Device Enabled'|awk '{print $4}'

这里的 1 表示设备被启用, 0 表示设备被禁用。

获取了设备状态后,我们就可以通过 xinput disable $IDxinput enable $ID 来禁用或启用设备。

最终得到的接本如下:

#!/bin/bash

declare -i ID
ID=$(xinput list | grep -iEo 'Touchpad.*id=[0-9]{1,2}' | grep -Eo '[0-9]{1,2}')
declare -i STATE
STATE=$(xinput list-props $ID|grep 'Device Enabled'|awk '{print $4}')
if [ $STATE -eq 1 ]
then
    xinput disable $ID
    echo "Touchpad disabled."
    # notify-send -a 'Touchpad' 'Disabled' -i /usr/share/icons/Adwaita/48x48/devices/input-touchpad*.png
else
    xinput enable $ID
    echo "Touchpad enabled."
    # notify-send -a 'Touchpad' 'Enabled' -i /usr/share/icons/Adwaita/48x48/devices/input-touchpad*.png
fi