900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > linux下查看usb插拔日志 Linux:如何检测usb键盘是否已插入和拔出

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

时间:2018-12-25 21:58:54

相关推荐

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

如果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()

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。