#!/bin/sh mice="G305|Viper|Naga Pro|Orochi V2|Viper V2" listMice() { xinput --list \ | awk -v "search=$mice" \ '{ if ($0 ~ search) { if ( $0 ~ /pointer/ ) { $1=$2=""; print $0 } } }' \ | sed -re's/.* id=([0-9]*).*/\1/g' # -e's/^[ \t]*//g' } xinput --list | grep pointer | grep -E "$mice" mice="$(listMice)" proplist='Accel Profile Enabled::0 1 Accel Speed::0' # Accel Speed::-0.7' IFS=' ' for device in $mice ; do # props=$(xinput --list-props "pointer:$device") props=$(xinput --list-props "$device") for prop in $proplist ; do propName="$(echo "$prop" | awk -F:: '{print $1}')" propVal="$(echo "$prop" | awk -F:: '{print $2}')" prop="$(echo "$props" | sed -rne 's/^.*'"$propName"' \(([0-9]+).*$/\1/ip')" oldIFS="$IFS" IFS=' ' #shellcheck disable=SC2086 xinput --set-prop "$device" "$prop" $propVal #shellcheck disable=SC2086 echo xinput --set-prop "$device" "$prop" $propVal IFS="$oldIFS" done done