在 Windows 中是否有等效于 Linux 的 lsusb?

lee*_*d00 6 windows

从软件中列出插入的 USB 设备,最好是外壳。

Linux,或者至少一些 Linuies 似乎有一个命令来做到这一点 lsusb

Sim*_*onS 6

您可以使用Get-PnpDevice, 及其参数-Class,-Status-InstanceId

\n

查看不同的输出(我-Status OK在所有示例中使用,因为我相信您需要它来获取当前活动的输出。如果您想查看所有内容,请不要使用此参数):

\n

InstanceId(仅显示 InstanceId 类似“USB*”的内容):

\n
PS C:\\> Get-PnpDevice -InstanceId \'USB*\' -Status OK\n\nStatus     Class           FriendlyName                  InstanceId\n------     -----           ------------                  ----------\nOK         HIDClass        USB-Input device              USB\\VID_03F0&P\xe2\x80\xa6\nOK         HIDClass        USB-Input device              USB\\VID_0B0E&P\xe2\x80\xa6\nOK         MEDIA           Logitech BRIO                 USB\\VID_046D&P\xe2\x80\xa6\nOK         USB             USB-Root-Hub (USB 3.0)        USB\\ROOT_HUB30\xe2\x80\xa6\nOK         USB             Logitech BRIO                 USB\\VID_046D&P\xe2\x80\xa6\nOK         USB             USB-Composite unit            USB\\VID_0B0E&P\xe2\x80\xa6\nOK         MEDIA           Jabra PRO 9460                USB\\VID_0B0E&P\xe2\x80\xa6\nOK         Image           Logitech BRIO                 USB\\VID_046D&P\xe2\x80\xa6\nOK         HIDClass        USB-Input device              USB\\VID_1BCF&P\xe2\x80\xa6\nOK         HIDClass        USB-Input device              USB\\VID_03F0&P\xe2\x80\xa6\nOK         USB             USB-Composite unit            USB\\VID_03F0&P\xe2\x80\xa6\n
Run Code Online (Sandbox Code Playgroud)\n

类(查看与 InstanceId 的区别,我们有一个带 InstanceId PCI* 的返回):

\n
PS C:\\> Get-PnpDevice -Class \'USB\' -Status OK\n\nStatus     Class           FriendlyName                  InstanceId\n------     -----           ------------                  ----------\nOK         USB             USB-Root-Hub (USB 3.0)        USB\\ROOT_HUB30\xe2\x80\xa6\nOK         USB             Logitech BRIO                 USB\\VID_046D&P\xe2\x80\xa6\nOK         USB             USB-Composite unit            USB\\VID_0B0E&P\xe2\x80\xa6\nOK         USB             Intel(R) USB 3.0 eXtensi...   PCI\\VEN_8086&D\xe2\x80\xa6\nOK         USB             USB-Composite unit            USB\\VID_03F0&P\xe2\x80\xa6\n
Run Code Online (Sandbox Code Playgroud)\n

InstanceId和Class(最严格的一个):

\n
PS C:\\> Get-PnpDevice -InstanceId \'USB*\' -Class USB -Status OK\n\nStatus     Class           FriendlyName                  InstanceId\n------     -----           ------------                  ----------\nOK         USB             USB-Root-Hub (USB 3.0)        USB\\ROOT_HUB30\xe2\x80\xa6\nOK         USB             Logitech BRIO                 USB\\VID_046D&P\xe2\x80\xa6\nOK         USB             USB-Composite unit            USB\\VID_0B0E&P\xe2\x80\xa6\nOK         USB             USB-Composite unit            USB\\VID_03F0&P\xe2\x80\xa6\n
Run Code Online (Sandbox Code Playgroud)\n

然后您可以创建一个函数并将其放入您的PowerShell 配置文件中,然后像在 Linux 中一样使用它

\n
PS C:\\> Function lsusb { Get-PnpDevice -InstanceId \'USB*\' -Class \'USB\' -Status OK }\nPS C:\\> lsusb\n\nStatus     Class           FriendlyName                  InstanceId\n------     -----           ------------                  ----------\nOK         USB             USB-Root-Hub (USB 3.0)        USB\\ROOT_HUB30\xe2\x80\xa6\nOK         USB             Logitech BRIO                 USB\\VID_046D&P\xe2\x80\xa6\nOK         USB             USB-Composite unit            USB\\VID_0B0E&P\xe2\x80\xa6\nOK         USB             USB-Composite unit            USB\\VID_03F0&P\xe2\x80\xa6\n
Run Code Online (Sandbox Code Playgroud)\n

尝试一下Get-PnPDevicecmdlet,看看什么适合您的需求。

\n

  • 您可以使用 `Get-PnpDevice -Class 'USB' -Status OK |选择FriendlyName,InstanceId`以获得更有用的输出,或者您可以选择更多列来获取未剪切的内容 (3认同)

小智 0

以下内容在 XP 中对我有用 - https://usbdeview.en.softonic.com/。我记得以前在 Windoze 时代使用过它,所以在使用 Kaperky 快速扫描后,我碰了一下木头并运行了它。我唯一的批评是“信息太多”。它似乎列出了我曾经插入系统的所有东西!

恐怕我不知道任何可以从 DOS 提示符运行的东西。希望这可以帮助。