如何从命令行列出通过 USB 连接的所有存储设备(拇指驱动器/外部硬盘驱动器)?

use*_*438 22 command-line usb

我只想列出通过 USB 连接的设备。

问题是 Ubuntu 似乎将所有拇指驱动器视为可移动(在 中/sys/block/*/removable),但它不会以相同的方式看待外部硬盘驱动器。

这比如何检测 USB 设备更具体一些

Jaz*_*azz 16

如果您正在寻找已安装的磁盘,一个简单的

df
Run Code Online (Sandbox Code Playgroud)

将列出它们以及所有其他磁盘以及一些有用的信息。

  • 但这提供了所有块设备,而不仅仅是那些通过 USB 连接的设备。 (3认同)

Jer*_*err 9

我建议检查设备的 udev 属性,特别是ID_BUS属性:

for device in /sys/block/*
do
    if udevadm info --query=property --path=$device | grep -q ^ID_BUS=usb
    then
        echo $device
    fi
done
Run Code Online (Sandbox Code Playgroud)


Kel*_*ley 3

我认为

lsusb
Run Code Online (Sandbox Code Playgroud)

会给你你想要的,至少如果我理解你的要求的话。(当然,它列出了所有 USB 设备,而不仅仅是存储。)