如果HAL守护进程正在运行(这在大多数现代linux桌面上都是如此),那么您可以监听它的DBus信号。下面是一个如何检测USB鼠标是否已插入的示例(我手头没有USB键盘):import gobject

import dbus

from dbus.mainloop.glib import DBusGMainLoop

DBusGMainLoop(set_as_default=True)

bus = dbus.SystemBus()

# enumerate all present mice:

manager = dbus.Interface(bus.get_object("org.freedesktop.Hal",

"/org/freedesktop/Hal/Manager"),

"org.freedesktop.Hal.Manager")

mice = set(manager.FindDeviceByCapability('input.mouse'))

def device_added(sender):

dev = dbus.Interface(bus.get_object("org.freedesktop.Hal", sender),

"org.freedesktop.Hal.Device")

try:

caps = dev.GetProperty('info.capabilities')

if 'input.mouse' in caps:

print "mouse plugged in"

mice.add(sender)

except dbus.DBusException:

pass

def device_removed(sender):

if sender in mice:

print "mouse unplugged"

mice.remove(sender)

bus.add_signal_receiver(device_added, signal_name="DeviceAdded")

bus.add_signal_receiver(device_removed, signal_name="DeviceRemoved")

loop = gobject.MainLoop()

loop.run()

linux下查看usb插拔日志,Linux:如何检测usb键盘是否已插入和拔出相关推荐

  1. linux下查看进程的线程数,linux查看进程的线程数

    top -H -p $PID  #查看对应进程的那个线程占用CPU过高 1.top -H 手册中说:-H : Threads toggle 加上这个选项启动top,top一行显示一个线程.否则,它一行 ...

  2. linux 下查看某个端口是否打开,linux如何查看某个端口是否开放

    1.你可以使用 lsof 命令来查看某一端口是否开放.查看端口可以这样来使用,我就以80端口为例: lsof -i:80 或者 lsof -i:22 如果有显示说明已经开放了,如果没有显示说明没有开放 ...

  3. linux查看主板最大内存容量,Linux下查看内存插槽数、最大...-linux下手动清理内存或缓存的...-查看linux主板内存槽与内存信息的方法详解_169IT.COM...

    一.先来看几个用dmidecode查看内存信息的例子. 1.查看内存槽数.那个槽位插了内存,大小是多少 代码示例: dmidecode|grep -P -A5 "Memory\s+Devic ...

  4. Linux下查看icc安装目录,[转载][Linux] icc与ifort编译器

    1.icc Intel C/C++编译器接受遵守ANSI C/C++ , ISO C/C++ standards,GNU inline ASM for IA-32 architecture标准的输入. ...

  5. linux下查看tomcat的启动日志

    一般服务器上项目出现问题的时候需要查看tomcat下的启动日志,方法如下: 1.win+r  在运行中输入mstsc 用远程登录客户端登录linux 2.打开SSH Secure Shell Clie ...

  6. linux如何查看光驱刻录日志,linux下光驱刻录

    cdrecord和mkisofs 制作iso映像: mkisofs -r -o target.iso source_directory 刻录光盘: cdrecord -v -eject speed=2 ...

  7. linux下查看硬盘型号等信息,linux下如何查看硬盘型号等信息

    在linux系统中查看硬盘信息,比如硬盘型号,可以用smartctl,hdparm等命令来查询. 1,在日志中显示硬盘有坏扇区 复制代码 代码示例: tail /var/log/messages Ma ...

  8. linux下查看ntp对时的命令,linux 查看服务器时间命令

    弹性云服务器 ECS 弹性云服务器(Elastic Cloud Server)是一种可随时自助获取.可弹性伸缩的云服务器,帮助用户打造可靠.安全.灵活.高效的应用环境,确保服务持久稳定运行,提升运维效 ...

  9. linux如何查看光驱刻录日志,linux 刻录光碟 命令 cdrecord

    linux 刻录光盘 命令 cdrecord cdrecord指令 cdrecord可以使用来烧录audio或data,至于烧录iso档可用下述步骤简易操作 1. 找出SCSIAddresses $ ...

最新文章

  1. Java同一个类的不同实例_如何创建2个类实例注入不同类的依赖项实现(通过guice)?...
  2. java编辑简单文本编辑器_简单的Java纯文本编辑器
  3. 项目需求 | PC VR头戴显示器实时三维坐标(项目经费20万)
  4. BOOST_TEST_FOREACH宏相关的测试程序
  5. 联想服务器做完raid找不到硬盘,联想服务器RAID配置步骤
  6. 集群机器时间同步设置
  7. Python中实现模糊匹配的魔法库:FuzzyWuzzy
  8. java equ,Java equals方法详解
  9. django-行对向的反向查找
  10. java 标识符命名规则_java语言基础之标识符和命名规则详解
  11. double精度丢失问题
  12. python env虚拟环境
  13. JavaWeb图书管理系统.rar(毕业设计(论文)+毕业设计指导书+大学毕业设计任务书+图书管理系统+毕业论文答辩)
  14. python菜鸟教程100例-菜鸟教程python
  15. java scavenge_Java虚拟机(JVM)垃圾回收器Parallel Scavenge收集器 - Break易站
  16. 一种基于机器学习的电影推荐系统设计
  17. 这一年,熬过许多夜,也有些许收获 | 2022年终总结
  18. 在华为工作的优点和缺点
  19. 十个高质量工具网站推荐,AI自动抠图换背景,任意背景自动融合
  20. Net Core WebApi自定义拦截特性简单实现

热门文章

  1. (译)如何使用cocos2d制作一个塔防游戏:第三部分
  2. [Flex]Flex 3.0 and Adobe AIR 1.0正式版发布!
  3. 其中一个页签慢_房建工程全套技术交底,720页Word版表格,各分部分项全覆盖...
  4. 接口返回数据太大_Vue实战044:Mockjs模拟服务器Api接口并返回数据详解
  5. 基于dijsktra算法的最短路径求解_基于dijkstra算法的AGV路径规划(含C++代码)
  6. 为什么要用shiro框架_社群裂变为什么要用微信群助手?怎么去策划社群的线上裂变?...
  7. [设计纹理素材]可爱手绘淡雅清新图案花样背景素材
  8. 教师节PSD分层海报设计模板 | 最好的海报,送给最好的老师们
  9. PSD分层模板|解析垂直化内容电商页面设计
  10. 海报PSD分层促销模板|深层剖析设计套路