Bash:如何在 Bash 中尋找滑鼠

Bash:如何在 Bash 中尋找滑鼠

我想知道是否有一種方法可以使用 bash 腳本來檢查系統是否有滑鼠(電腦)或沒有(平板電腦),而不是像滑鼠在螢幕上的位置那樣,而是檢測它是否是平板電腦或您正在設備上使用滑鼠...

其用途:自動使桌面在平板電腦上更好地工作

答案1

bluedxca93ish 替代方案,無需退出。

if [ -n "$(ls /dev/input/by-id/*mouse 2>/dev/null | grep -i 'usb\|PS\|COM')" ]; then echo "Bluedxca93 found a mice thats nice";fi

if [ -n "$(xinput --list | grep TouchPad)" ]; then echo "Bluedxca93 found a damn tablet";fi

這肯定比你的方法慢,但我擔心不像你的那樣依賴 bash 版本。也只有兩行。

答案2

此類資訊稍微依賴特定的 Linux 發行版。

遵循幾個可能有幫助的命令...

ls /dev/input/by-id/*mouse && echo "yes" || echo "no"

cat /proc/bus/input/devices | grep -E 'Name|Handler'

cat /proc/bus/input/devices | awk -v RS="" '/TouchPad/ {print "laptop";last}'

xinput --list

sudo dmidecode --string chassis-type
--> 最後一個將返回類似「筆記型電腦」、「便攜式」、「子筆記本」、「主伺服器機箱」等內容(cat /sys/class/dmi/id/chassis_type以避免 sudo)

答案3

我設法為滑鼠和觸控板製作了一個工作腳本,並正確檢測觸控屏,這就是我所做的:

#/bin/bash -e

ls /dev/input/by-id/*mouse && echo "Desktop Mode" && exit
xinput --list | grep TouchPad && echo "Desktop Mode" || echo "Tablet Mode"

相關內容