Я хочу, чтобы моя сенсорная панель автоматически отключалась, когда подключена внешняя мышь, и включалась, когда ее нет. Я пытался использовать, touchpad-indicator
но это не удается в тех случаях, когда компьютер был переведен в режим сна с подключенной мышью и проснулся с отключенной мышью.
Я попытался превратить следующий скрипт в демон для решения этой проблемы, но не могу заставить его работать:
#!/bin/bash
declare -i TID
declare -i MID
TID=`xinput list | grep -Eo 'Touchpad\s*id\=[0-9]{1,2}' | grep -Eo '[0-9]{1,2}'`
MID=`xinput list | grep -Eo 'Mouse\s*id\=[0-9]{1,2}' | grep -Eo '[0-9]{1,2}'`
if [ $MID -gt 0 ]
then
xinput disable $TID
else
xinput enable $TID
fi
Я старался start-stop-daemon -S -x ./myscript.sh -b
и setsid ./myscript.sh >/dev/null 2>&1 < /dev/null &
и nohup ./myscript 0<&- &>/dev/null &
даже./myscript.sh &
Все они возвращают некоторое 4-значное число, которое, я думаю, должно быть PID запущенного процесса, но когда я запускаю lxtask , нет процессов с этим PID , даже если я отмечаю «просмотреть все процессы». И, конечно же, это не работает!
xinput
требуется работающий X-сервер, и большинство методов запуска вещей в качестве демонов не знают или не могут подключиться к X. В-третьих, и главная причина, почему вы всегда должны объяснять, что вы пытаетесь сделать, это то, что очень часто решение то, что кто-то пытается подать заявку, на самом деле не способ сделать это, и в итоге вы задаете неправильный вопрос, обычно известный как проблема XY .