Linux命令dumpkeys详解

dumpkeys

Linux dumpkeys 命令用于显示键盘映射表,输出的内容可以被 loadkeys 命令识别,从而改变映射关系。

安装

在 Linux 中输入以下命令安装 dumpkeys

# Debian或Ubuntu 系统
[linux@l1mn.com ~]$ sudo apt-get install kbd

# CentOS 7
[linux@l1mn.com ~]$ sudo yum install kbd

# CentOS 8
[linux@l1mn.com ~]$ sudo dnf install kbd

Linux dumpkeys命令适用于大多数 Linux 发行版,如Debian、Ubuntu、Alpine、Arch Linux、Kali Linux、RedHat/CentOS、Fedora、Raspbian等。

语法

dumpkeys [选项]

选项

  • -h, --help : 打印程序的版本号和简短的使用信息,然后退出
  • -i, --short-info : 打印内核键盘驱动信息(键码范围、数量、状态键)
  • -l, --long-info : 打印详细的驱动信息,包括所有 dumpkeysloadkeys 支持的操作符号及其数值
  • -n, --numeric : 绕过操作码值到符号表示的转换,而是以十六进制格式打印
  • -f, --full-table : 跳过所有疑似的简写输出,以规范形式绑定输出
  • -t, --funcs-only : 通常 dumpkeys 会打印键绑定和字符串定义,如果指定此选项,它将只打印功能键字符串定义
  • -k, --keys-only : 通常 dumpkeys 会打印键绑定和字符串定义,如果指定此选项,它将只打印键绑定
  • -d, --compose-only : 它只打印组合键组合,只有当你的内核支持组合键支持时才有效
  • -c, --charset : 将字符操作码解释为来自指定字符集的

实例

介绍几个常用场景:

# 显示键盘映射表
[linux@l1mn.com ~]$ dumpkeys

# 显示驱动信息
[linux@l1mn.com ~]$ dumpkeys -i

# 显示详细的驱动信息,包括所有 dumpkeys 和 loadkeys 支持的操作符号及其数值
[linux@l1mn.com ~]$ dumpkeys -l

# 以十六进制格式打印键盘映射表
[linux@l1mn.com ~]$ dumpkeys -n

# 只打印功能键字符串定义
[linux@l1mn.com ~]$ dumpkeys -t

# 只打印键绑定
[linux@l1mn.com ~]$ dumpkeys -k

# 只打印组合键组合,只有当你的内核支持组合键支持时才有效
[linux@l1mn.com ~]$ dumpkeys -d

# 将字符操作码解释为来自指定字符集的
[linux@l1mn.com ~]$ dumpkeys -c

例子:显示功能键信息

# dumpkeys --funcs-only 
string F1 = "\033[[A"
string F2 = "\033[[B"
string F3 = "\033[[C"
string F4 = "\033[[D"
string F5 = "\033[[E"
string F6 = "\033[17~"
string F7 = "\033[18~"
string F8 = "\033[19~"
string F9 = "\033[20~"
string F10 = "\033[21~"
string F11 = "\033[23~"
string F12 = "\033[24~"
string F13 = "\033[25~"
string F14 = "\033[26~"
string F15 = "\033[28~"
string F16 = "\033[29~"
string F17 = "\033[31~"
string F18 = "\033[32~"
string F19 = "\033[33~"
string F20 = "\033[34~"
string Find = "\033[1~"
string Insert = "\033[2~"
string Remove = "\033[3~"
string Select = "\033[4~"
string Prior = "\033[5~"
string Next = "\033[6~"
string Macro = "\033[M"
string Pause = "\033[P"

例子:显示驱动信息

# dumpkeys -i
键值码范围被内核支持: 1 - 255
可绑定到键值的动作最大值: 256
实际使用的键值数: 128
其中 121 已动态分配
被内核支持的动作码值范围
0x0000 - 0x00ff
0x0100 - 0x01ff
0x0200 - 0x0213
0x0300 - 0x0313
0x0400 - 0x0405
0x0500 - 0x05ff
0x0600 - 0x0603
0x0700 - 0x0708
0x0800 - 0x08ff
0x0900 - 0x0919
0x0a00 - 0x0a08
0x0b00 - 0x0bff
0x0c00 - 0x0c08
0x0d00 - 0x0dff
0x0e00 - 0x0e0a
内核支持的功能键数:256
编写定义的最大nr: 256
实际使用的编写定义nr: 68

Linux dumpkeys命令的注意事项

  1. 如果在使用 dumpkeys 命令时遇到报错信息 bash: dumpkeys: command not found ,那么可能是系统中没有安装对应的 kbd 包,你可以按照上面的安装步骤进行安装。

皖ICP备2023023451号

Copyright © L1MN.COM 联系方式:l1mnfw@163.com