A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
--keymap
命令 和 --timeout
选项。showkey 命令检查键盘发送的代码以可打印的形式显示它们。showkey 将标准输出打印到扫描码或键码或按下的每个键的 ascii 代码。
-bash/zsh: showkey command not found #Debian apt-get install kbd #Ubuntu apt-get install kbd #Alpine apk add kbd #Arch Linux pacman -S kbd #Kali Linux apt-get install kbd #CentOS yum install kbd #Fedora dnf install kbd #Raspbian apt-get install kbd #Docker docker run cmd.cat/showkey showkey
showkey 有三种操作模式:显示扫描码、键盘码、以及测试键盘映射(keymap), 可以通过命令行选项选择操作模式。在前两种模式中,程序运行直到自上次按键或释放事件以来已过去 10
秒,或直到它从另一个进程接收到合适的信号(如 SIGTERM)。 在 ascii
模式下,程序在用户键入 Ctrl + D 时终止。
在扫描码转储模式下,showkey 以十六进制格式打印从键盘接收到标准输出的每个字节。 当在接收的字节之间或内部接收缓冲区填满时间隔约 0.1 秒时,将打印一个新行。 这可用于粗略地确定键盘在给定按键时一次发送的字节序列。 扫描码转储模式主要用于调试键盘驱动程序或其他低级接口。 因此,对于常规最终用户来说,它不应该是非常有趣的。 然而,一些现代键盘具有产生扫描码的键或按钮,内核不与键码相关联,并且在找出它们之后,用户可以使用 setkeycodes 分配键码。
在默认键码转储模式下,showkey 将标准输出打印出键码或按下或释放的每个键。 还报告了事件的类型,新闻或发布。 密钥代码是内核为每个单独的物理密钥分配的编号。 每个键始终只有一个关联的键码,无论键盘在按下时是否发送单个或多个扫描码。 在此模式下使用 showkey,您可以找到在个性化键盘映射文件中使用的数字。
在 ascii 转储模式下,showkey 根据当前的键映射将按下的键的十进制,八进制和十六进制值打印到标准输出。
showkey [-h|--help] [-a|--ascii] [-s|--scancodes] [-k|--keycodes]
-h --help showkey 打印到标准错误输出其版本号,编译选项和短用法消息,然后退出。 -s --scancodes 在扫描代码转储模式下启动 showkey。 -k --keycodes 在键码转储模式下启动 showkey。 当没有命令行选项时,这是默认设置。 -a --ascii 在 'ascii' 转储模式下启动showkey。
$ showkey -a Press any keys - Ctrl-D will terminate this program a 97 0141 0x61 A 65 0101 0x41 B 66 0102 0x42 7 55 0067 0x37