python检测usb插拔_检测热插拔偶数的python脚本

我尝试使用python来检测鼠标和键盘事件,并在检测期间容忍热插拔操作。我编写这个脚本来自动检测运行时的键盘和鼠标插件,并输出所有的键盘和鼠标事件。我使用evdev和pyudev包来实现这个功能。我的键盘和鼠标检测主要包括键盘和插件。然而,每当我拔掉鼠标,许多奇怪的事情发生,我的脚本无法正常工作。我有几个困惑。在

(1)每当鼠标插入系统时,/dev/input/文件夹中都会生成两个文件,包括./mouseX和./eventX。我试图通过cat查看这两个源代码的输出,它们确实存在差异,但我不明白为什么linux会有./mouseX,即使./eventX已经存在?在

(2)每当我拔下鼠标时,./mouseX plumble事件首先出现,我在evdev中没有使用这个事件,这导致脚本失败,因为./eventX(我在其中读取脚本中的数据)同时被拔出,但我只能在下一轮中检测到./eventX。我使用了一个技巧(脚本中的变量I)来绕过这个问题,但是即使我可以成功地删除鼠标设备,但是选择。选择()开始无休止的输入阅读,即使我没有在键盘上键入任何东西。在

脚本如下所示(根据previous post的答案修改),感谢您的关注!在#!/usr/bin/env python

import pyudev

from evdev import InputDevice, list_devices, categorize

from select import select

context = pyudev.Context()

monitor = pyudev.Monitor.from_netlink(context)

monitor.filter_by(subsys

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值