我当时正在看这如果只有一个设备名称,则回答此问题。拔下设备并重新插入时,ID 可能会发生变化,这就是为什么我需要通过名称获取它们。但我有两个:
SteelSeries Sensei Raw Gaming Mouse
我该如何在脚本中修复这个问题?我需要第一个有特定的设置,第二个也有特定的设置。
换句话说,我如何获取这两个 ID 以及它们出现的顺序?某种检查输出的 for 循环。
答案1
有人在所以提供了一个很好的脚本,可能对您有帮助。相应地更改命令。
您可以执行以下操作:
if [ "$SEARCH" = "" ]; then exit 1 fi ids=$(xinput --list | awk -v search="$SEARCH" \ '$0 ~ search {match($0, /id=[0-9]+/);\ if (RSTART) \ print substr($0, RSTART+3, RLENGTH-3)\ }'\ ) for i in $ids do xinput set-prop $i 'Device Accel Profile' -1 xinput set-prop $i 'Device Accel Constant Deceleration' 2.5 xinput set-prop $i 'Device Accel Velocity Scaling' 1.0 done
因此,您首先要找到所有符合搜索模式的 ID
$SEARCH
并将它们存储在 中$ids
。然后循环遍历 ID 并执行这三个xinput
命令。
您应该确保$SEARCH
匹配程度不要太大,因为这可能会导致不良行为。