我一直在研究一个脚本,它将在启动时运行,但我遇到了一个问题。这个脚本的目的是减缓鼠标加速,因为我使用的是游戏鼠标,而且总是太快。
当我使用xPosio-ListIn得到这个输出(从许多其他行中):
SteelSeries Sensei Raw游戏鼠标id=10[从指针(2)]
当我打开终端并运行此命令时,一切运行正常,并且我的灵敏度发生了变化:
xinput --set-prop 10 "Device Accel Constant Deceleration" 2
但是,当我将上面的字符串放在开头带有“eval”的shell.sh中时,它会提示我以下错误:
属性“设备”不存在,需要指定其类型和
格式
我做错什么了?
最佳答案
您不需要eval
;将命令完全按照您在脚本中从终端使用它的方式放置。
问题是eval
实际上是重新解析它接收到的字符串,这是将参数参数与空白连接的结果。您的eval
命令相当于
xinput --set-prop 10 Device Accel Constant Deceleration 2
如果引用整个字符串,则可以使用
eval
:eval 'xinput --set-prop 10 "Device Accel Constant Deceleration" 2'
但是没有理由这么做;只要使用
xinput --set-prop 10 "Device Accel Constant Deceleration" 2
关于bash - Bash脚本无法识别设备ID?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40750857/