Linux之禁用筆記本鍵盤
阿新 • • 發佈:2019-04-16
操作 關閉 使用 sem 腳本文件 一次 遍歷 NPU 字符串
禁用筆記本鍵盤使用外接鍵盤
執行效果:執行一次腳本,筆記本鍵盤和外接鍵盤二存一
手動執行腳本,需要自動執行請百度使用條件:xinput, 獲悉外接鍵盤名字
步驟
安裝
xinput
軟件
ubuntu系列的命令sudo apt-get install xinput
centos系統的命令sudo yum install xinput
其他的請百度安裝xinput
查找外接鍵盤名字
插入外接鍵盤,終端輸入
xinput
拔出外接鍵盤,終端輸入xinput
對比多出的部分,就是外接鍵盤的名字新建腳本
keyboard.sh
,內容如下,需要修改外接鍵盤的名字為你自己的,然後賦予腳本執行權限chmod +x keyboard.sh
#!/bin/bash # 筆記本鍵盤名字 #一般默認是這個,如果不是,請修改 KEYBOARD_DEV='AT Translated Set 2 keyboard' # 外接鍵盤名字 #使用xinput獲悉外接鍵盤名字,必須修改成自己的外接鍵盤名字 USB_KEYBOARD_DEV='SEMICO USB Keyboard' #關閉設備函數 #使用格式:函數名 關閉設備的名字 function setDisable(){ #獲取設備的id值,每行一個id,全部id在一個字符串上 ID_Str=`xinput list | grep "$1" | awk -F 'id=' '{print $2}' | awk '{print $1}' ` #設置分隔符為換行 IFS=$'\n'; #每行一個存進數組中 IDS=($ID_Str) #遍歷ID 設置關閉設備 for elem in ${IDS[@]} do xinput --disable $elem done } #開啟設備函數 #使用格式:函數名 開啟設備的名字 function setEnable(){ #獲取設備的id值,每行一個id,全部id在一個字符串上 ID_Str=`xinput list | grep "$1" | awk -F 'id=' '{print $2}' | awk '{print $1}' ` #設置分隔符為換行 IFS=$'\n'; #每行一個存進數組中 IDS=($ID_Str) #遍歷ID 設置開啟設備 for elem in ${IDS[@]} do xinput --enable $elem done } #usb鍵盤是否插入,有插入字符串就有內容 EXIST_USB_KEYBOARD=`xinput list | grep "$USB_KEYBOARD_DEV"` if [ "" != "$EXIST_USB_KEYBOARD" ] then #如果外接鍵盤存在,那就關閉筆記本鍵盤,並開啟外接鍵盤 setDisable $KEYBOARD_DEV setEnable $USB_KEYBOARD_DEV echo "操作成功,愉快地禁用了筆記本鍵盤" else #如果外接鍵盤不存在,那就開啟筆記本鍵盤,並關閉外接鍵盤 setDisable $USB_KEYBOARD_DEV setEnable $KEYBOARD_DEV echo "操作成功,開啟筆記本鍵盤" fi
4. 鼠標點擊腳本文件就可以執行 `keyboard.sh`腳本文件了
Linux之禁用筆記本鍵盤