概括

概括

概括

我想udev在附加某个鼠标时使用规则来调整其速度。我可以udev触发规则,但它无法成功调整鼠标速度。但是,当我手动执行该命令时,它确实有效。我究竟做错了什么?

99-mouse-connect.rules文件输入/etc/udev/rules.d/

ACTION=="add", \
SUBSYSTEM=="usb", \
ATTRS{idVendor}=="062a", \
ATTRS{idProduct}=="5918", \
ENV{DISPLAY}=":0", \
ENV{XAUTHORITY}="/run/user/1000/gdm/Xauthority", \
RUN+="/usr/bin/notify-send 'Adjusting MOSART mouse speed...'", \
RUN+="/usr/bin/xinput --list | /usr/bin/sed -n -E '/MOSART Semi\. 2\.4G Keyboard Mouse\s*id=.*pointer/s/.*=([0-9]+).*/\1/p' | /usr/bin/xargs -I {} /usr/bin/xinput set-prop {} 'libinput Accel Speed' -1"

它甚至显示系统通知。同样,当我手动执行最后一个命令时,它会起作用。为什么它在 udev 规则中不起作用?

我尝试过的

  • 我尝试将命令放入单独的脚本中,并将 udev 规则中的最后四行替换为

    RUN+="path/to/script.sh"
    

    在哪里

    #!/bin/bash
    
    export DISPLAY=:0
    export XAUTHORITY=/run/user/1000/gdm/Xauthority
    
    /usr/bin/notify-send 'Adjusting MOSART mouse speed...'
    /usr/bin/xinput --list | /usr/bin/sed -n -E '/MOSART Semi\. 2\.4G 
    Keyboard Mouse\s*id=.*pointer/s/.*=([0-9]+).*/\1/p' | 
    /usr/bin/xargs -I {} /usr/bin/xinput set-prop {} 'libinput Accel Speed' -1
    

    是该文件的内容。但这也行不通。

  • 我也尝试ACTION=="bind"在这里建议

相关内容