您的位置:首页 > 运维架构 > Linux

Linux之禁用笔记本键盘

2019-04-15 23:49 1121 查看

禁用笔记本键盘使用外接键盘

执行效果:执行一次脚本,笔记本键盘和外接键盘二存一
手动执行脚本,需要自动执行请百度

使用条件:xinput, 获悉外接键盘名字

  • 步骤

      安装

      xinput
      软件
      ubuntu系列的命令
      sudo apt-get install xinput

      centos系统的命令
      sudo yum install xinput

      其他的请百度安装
      xinput

    1. 查找外接键盘名字

      插入外接键盘,终端输入

      xinput

      拔出外接键盘,终端输入
      xinput

      对比多出的部分,就是外接键盘的名字

    2. 新建脚本

      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`脚本文件了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: