红联Linux门户
Linux帮助

〖Linux〗使用命令行切换触摸板的状态on/off/toggle

发布时间:2016-01-11 15:37:41来源:linux网站作者:scue

最近发现在Ubuntu13.10中使用Fn+F9对触摸板的控制操作不灵了;

并且在黑夜、外置键盘时,按下这个组合键也很不方便,由此便想到使用命令行来切换触摸板状态;


脚本:~/bin/touchpadctrl

 1 #!/bin/bash -
 2 #==================================
 3 #
 4 #          FILE: touchpadctrl
 5 #
 6 #         USAGE: ./touchpadctrl
 7 #
 8 #   DESCRIPTION:
 9 #
10 #       OPTIONS: ---
11 #  REQUIREMENTS: ---
12 #          BUGS: ---
13 #         NOTES: ---
14 #        AUTHOR: linkscue (scue)
15 #  ORGANIZATION:
16 #       CREATED:
17 #      REVISION:  ---
18 #==================================
19
20 # xinput --list             ==> 获取TouchPad的id号(我的是13)
21 # xinput --list-props 13    ==> 获取TouchPad的设备状态
22 # man xinput                ==> 获取xinput的使用方法
23 on(){
24     #synclient  TouchpadOff=0
25     xinput set-prop 13 'Device Enabled' 1
26     echo -e "\e[0;36mtouchpad on.\e[0m" # cyan
27     exit
28 }
29 off(){
30     #synclient TouchpadOff=1
31     xinput set-prop 13 'Device Enabled' 0
32     echo -e "\e[0;36mtouchpad off.\e[0m" # cyan
33     exit
34 }
35
36 usage(){
37     echo -e "\e[0;31m==> Usage: $(basename $0) [ON/off/toggle].\e[0m" # red
38     exit
39 }
40
41 getstate(){
42     echo $(xinput --list-props 13 | grep Enable | awk -F: '{print $2}')
43 }
44
45 toggle(){
46     echo -en "\e[0;31m==> toggle: \e[0m" # red
47     case $(getstate) in
48         "0" ) on
49             ;;
50         "1" ) off
51             ;;
52     esac
53 }
54
55 # detect: help
56 if [[ ${1} != "" ]]; then
57     case ${1} in
58         "-h" | "--help" | "-help" )
59             usage
60             ;;
61     esac
62 fi
63
64 if [[ $# == 0 ]]; then
65     # auto swtich
66     if [[ $(lsusb | grep 'Sunplus Innovation Technology') != "" ]]; then
67         off
68     else
69         toggle
70     fi
71 else
72     # manual
73     case ${1} in
74         "of"|"off"|"OFF"|"Off") off
75             ;;
76         "t"|"toggle"|"T"|"Toggle") toggle
77             ;;
78         *) on
79             ;;
80     esac
81 fi


使用举例:

1. touchpadctrl

-- 有外置鼠标时,自动off,否则toggle

2. touchpadctrl on

-- 启用触摸板

3. touchpadctrl off

-- 禁用触摸板

4. touchpadctrl toggle

-- 切换触摸板状态


ubuntu(14.04)synaptics触摸板失灵修复(奇怪的系统相互干扰):http://www.linuxdiyf.com/linux/16703.html

更新ubuntu15.10后触摸板点击功能消失:http://www.linuxdiyf.com/linux/16596.html

ubuntu15.10插入鼠标后自动禁用触摸板:http://www.linuxdiyf.com/linux/16590.html

Ubuntu下轻松关闭触摸板:http://www.linuxdiyf.com/linux/15830.html

ubuntu14.04开关触摸板:http://www.linuxdiyf.com/linux/14104.html