Linux 使用xmodmap禁用键盘按键(禁用Linux快捷键)

这篇具有很好参考价值的文章主要介绍了Linux 使用xmodmap禁用键盘按键(禁用Linux快捷键)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

最近在Linux中用QT做项目,开发一个全屏软件运行在公司的设备上,系统是统信UOS Linux系统,设备开机后会立即进入软件,且没有权限不允许用户进入Linux后台。

但有点麻烦,大家都知道,在Linux中,可以按快捷键 Ctrl + Alt + (F1 - F6) ,会进入黑屏终端,在这个黑屏终端就可以使用命令将软件强制关闭(kill);或者按快捷键 Ctrl + Alt + T 可以打开终端窗体,终端就可以使用命令将软件强制关闭;或者按快捷键 Ctrl + Alt + Delete 可以进入关机选项界面,可以调出UOS的后台任务管理器…

这些都是不允许的,所以我在网上找,有什么方式可以禁用统信UOSLinux系统的快捷键,找了很久,没有找到相关的解决方法;但是找到可以使用xmodmap去修改按键和禁用按键,感觉可行,于是自己亲自尝试后发现也可以行,于是记录下来!


  1. Ctrl + Alt + (F1 - F6)
    黑屏终端演示图:
    Linux 使用xmodmap禁用键盘按键(禁用Linux快捷键)

  2. Ctrl + Alt + T
    终端演示图:
    Linux 使用xmodmap禁用键盘按键(禁用Linux快捷键)

  3. Ctrl + Alt + Delete
    进入关机选项界面
    Linux 使用xmodmap禁用键盘按键(禁用Linux快捷键)
    Linux 使用xmodmap禁用键盘按键(禁用Linux快捷键)

存在以上的行为,对系统都是挺危险的,所以,得禁用这些快捷键!


1. xmodmap 是什么?

貌似是可以修改键盘映射和鼠标映射的命令…

查看keycode命令:
xmodmap -pke

Linux 使用xmodmap禁用键盘按键(禁用Linux快捷键)

等等一共有255个。

每个keycode对应一个键盘按键。

禁用键盘按键需要用到这些keycode。

2. 禁用

使用命令:
xmodmap -e 'keycode 数字 = '
暂时禁用键盘按键!

例如:
我在项目中禁用Alt键和F1 - F12键

首先找到左Alt键和右Alt键
Linux 使用xmodmap禁用键盘按键(禁用Linux快捷键)
Linux 使用xmodmap禁用键盘按键(禁用Linux快捷键)
代码命令禁用左Alt键和右Alt键:

xmodmap -e 'keycode 64 = '			// 禁用左Alt键
xmodmap -e 'keycode 108 = '			// 禁用右Alt键

让其等于空即可!(直接在终端运行命令即可)

我是在Linux下QT操作的,所以我可以使用C/C++的函数system()去调用命令:

// 暂时禁用Alt键                                                    
system("xmodmap -e 'keycode 64 = '");       // key Alt as Left 
system("xmodmap -e 'keycode 108 = '");      // key Alt as Right

执行完之后,按键盘Alt键就没有反应了,可以测试快捷键Ctrl + Alt + F2,会发现这个快捷键没法使用了!
使用了取巧的方式进行禁用快捷键!(没办法,网上找不到禁用统信UOS系统的快捷键方法)

但是,使用这种方式有一个小缺点,就是重启系统后,他就会自动恢复了!

这个我看网上有教程说可以将命令写入一个什么什么文件,就可以实现开机自动调用进行禁用了,具体我没试过喔…

禁用F1 - F12:
Linux 使用xmodmap禁用键盘按键(禁用Linux快捷键)
Linux 使用xmodmap禁用键盘按键(禁用Linux快捷键)

system("xmodmap -e 'keycode 67 = '");
system("xmodmap -e 'keycode 68 = '");
system("xmodmap -e 'keycode 69 = '");
system("xmodmap -e 'keycode 70 = '");
system("xmodmap -e 'keycode 71 = '");
system("xmodmap -e 'keycode 72 = '");
system("xmodmap -e 'keycode 73 = '");
system("xmodmap -e 'keycode 74 = '");
system("xmodmap -e 'keycode 75 = '");
system("xmodmap -e 'keycode 76 = '");
system("xmodmap -e 'keycode 95 = '");
system("xmodmap -e 'keycode 96 = '");

3. 恢复

手动恢复!

调用命令:
xmodmap -e 'keycode'
恢复键盘按键!

keycode:上面截图等号右边那些字符串!

例如:
恢复左Alt键和右Alt键命令:

xmodmap -e 'keycode 64 = Alt_L Meta_L Alt_L Meta_L'
xmodmap -e 'keycode 108 = Alt_R Meta_R Alt_R Meta_R'

代码恢复:

system("xmodmap -e 'keycode 64 = Alt_L Meta_L Alt_L Meta_L'");
system("xmodmap -e 'keycode 108 = Alt_R Meta_R Alt_R Meta_R'");

这样就可以实现恢复操作了,然后可以测试快捷键Ctrl + Alt + F2,可以发现,又可以正常进入黑屏终端了!

恢复F1 - F12键:

system("xmodmap -e 'keycode 67 = F1 F1 F1 F1 F1 F1 XF86Switch_VT_1'");
system("xmodmap -e 'keycode 68 = F2 F2 F2 F2 F2 F2 XF86Switch_VT_2'");
system("xmodmap -e 'keycode 69 = F3 F3 F3 F3 F3 F3 XF86Switch_VT_3'");
system("xmodmap -e 'keycode 70 = F4 F4 F4 F4 F4 F4 XF86Switch_VT_4'");
system("xmodmap -e 'keycode 71 = F5 F5 F5 F5 F5 F5 XF86Switch_VT_5'");
system("xmodmap -e 'keycode 72 = F6 F6 F6 F6 F6 F6 XF86Switch_VT_6'");
system("xmodmap -e 'keycode 73 = F7 F7 F7 F7 F7 F7 XF86Switch_VT_7'");
system("xmodmap -e 'keycode 74 = F8 F8 F8 F8 F8 F8 XF86Switch_VT_8'");
system("xmodmap -e 'keycode 75 = F9 F9 F9 F9 F9 F9 XF86Switch_VT_9'");
system("xmodmap -e 'keycode 76 = F10 F10 F10 F10 F10 F10 XF86Switch_VT_10'");
system("xmodmap -e 'keycode 95 = F11 F11 F11 F11 F11 F11 XF86Switch_VT_11'");
system("xmodmap -e 'keycode 96 = F12 F12 F12 F12 F12 F12 XF86Switch_VT_12'");

总结

键盘禁用,简单的用法就是这样了,其实xmodmap还有很多高级用法的,例如键盘按键调换,鼠标左右点击调换等等…

我在项目中用法:软件启动就立刻禁用按键(快捷键),当使用权限正常进入后台前,就恢复!
使用很简单,但是却帮我解决很大的问题!文章来源地址https://www.toymoban.com/news/detail-496926.html

到了这里,关于Linux 使用xmodmap禁用键盘按键(禁用Linux快捷键)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • elementui表格插槽使用的input输入框,添加键盘快捷键上下左右箭头,获取焦点

    给表格行、列赋值index;获取表格的总列数 在el-table 添加 :cell-class-name=\\\"tableRowClassName\\\" 当某个单元格被点击时 获取行列 触发及键盘事件 @cell-click=\\\"handleCellClick\\\" 给input赋值id

    2024年02月02日
    浏览(51)
  • Blender 所有常用快捷键速查表:掌握 Blender 键盘快捷键

    Blender 是一款功能强大的开源 3D 和 2D 动画程序或计算机图形软件,任何人都可以免费使用。 无论您是动画师、建模师、VFX 艺术家还是游戏开发者,Blender 都是最佳选择。2000 年,Blender 2.0 推出。 二十年后,Blender 3.0 到来,标志着开源 2D 和 3D 内容创作时代的新篇章。 无论您

    2024年02月08日
    浏览(59)
  • Chrome 键盘快捷键

    很多人喜欢使用键盘快捷键来操作电脑,因为在熟练的情况下,使用键盘会比使用鼠标点击更快、更高效。本文对Chrome浏览器常用的快捷键做个说明。 希望能够凭自己的一己之力,能够帮助到各位初学开发的小伙伴,避免走弯路,费时费力,你们的成长是我最大的幸福。愿小

    2024年02月11日
    浏览(72)
  • 键盘快捷键

    键盘快捷键通常用于现代操作系统和计算机软件程序中。 学习和使用键盘快捷键可以节省大量时间。 描述 Windows Mac OS 编辑菜单 Alt + E Ctrl + F2 + F 文件菜单 Alt + F Ctrl + F2 + E 查看菜单 Alt + V Ctrl + F2 + V 选取所有文本 Ctrl + A Cmd + A 复制文本 Ctrl + C Cmd + C 查找文本 Ctrl + F Cmd + F 查找

    2024年02月02日
    浏览(54)
  • vue 键盘快捷键标注

    参考:用html加css画个新拟态键盘_html 模拟键盘_背着行囊去远方的博客-CSDN博客

    2024年02月15日
    浏览(52)
  • 安卓设备蓝牙键盘快捷键

    日期:2023年1月。 安卓设备可以通过蓝牙或有线外接键盘,值得一提的是,安卓平板连接蓝牙键盘和蓝牙鼠标是一个不错的组合。本文以鸿蒙3.0平板进行测试,介绍一些安卓设备常用的快捷键,内容包含鼠标按键、系统快捷键、桌面快捷键、输入法快捷键、其它快捷键、等等

    2024年02月09日
    浏览(52)
  • RKH81 键盘快捷键

    ⌨️ 旋钮功能篇: ⚡ 电量提示篇: FN + ENTER — 查看电池用量情况 🌟 背光控制篇: FN + ↑ — 背光亮度 + FN + ↓ — 背光亮度 - FN + ← — 背光速度 - FN + → — 背光速度 + FN + — 切换背光颜色 FN + | — 支持多种背光效果切换 FN + — — 长按三秒,恢复出厂设置 FN + windo

    2024年02月11日
    浏览(68)
  • 将windows按键修改成mac的快捷键

    使用autoHotKey,下载后创建一个脚本.ahk文件,将下面的进行粘贴. 右键run script运行当前的脚本.ahk文件,就可以实现mac的快捷键了.

    2024年02月14日
    浏览(43)
  • Python | PyCharm 键盘快捷键

    创建和编辑 Alt  +  Enter 显示意图动作 Ctrl  +  Space 基本代码完成 Ctrl  +  Shift  +  Space 智能代码完成 Ctrl  +  Alt  +  Space 类型名称完成 Ctrl  +  Shift  +  Enter 完整声明 Ctrl  +  P  /  Alt  +  Q 参数信息/上下文信息 Ctrl  +  Shift  +  I 快速定义 Ctrl  +  Q  /  Shift  +  F1 快速

    2024年04月10日
    浏览(53)
  • 如何在windows10实现键盘控制音量快捷键 - F12增大音量、F11减低音量、F10静音 - 使用微软官方的PowerToys实用工具中的Keyboard Manager自定义快捷键

    微软官方限定,“ 快捷键至少必须有2个键 ”--- 建议使用右边的alt+F12来单手操作 安装powertoys (微软官方出品,内含“ 键盘管理器 ”,官网介绍链接) 迅雷下载: https://github.com/microsoft/PowerToys/releases/download/v0.68.0/PowerToysSetup-0.68.0-x64.exe 百度网盘下载: 链接:https://pan.baid

    2024年02月09日
    浏览(69)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包