C 以编程方式查询usb闪存驱动器卷标

C 以编程方式查询usb闪存驱动器卷标,c,linux,C,Linux,我的目标是使用C在linux中以编程方式确定安装的USB闪存驱动器的名称 有人有什么建议吗?认为U盘已注册为/dev/sdb(您可以使用sudo fdisk-l或dmesg和grep来确定/dev中的U盘是哪个) 如果您想获取U盘的标签,可以使用sudo mlabel-i/dev/sdb1-s::,然后使用grep、awk或sed 如果您想获得UUID,可以使用sudoblkid/dev/sdb1 ->检测到的USB闪存驱动器的名称是什么意思?我指的是显示名称,即格式化时指定的设备名称。您不格

我的目标是使用C在linux中以编程方式确定安装的USB闪存驱动器的名称


有人有什么建议吗?

认为U盘已注册为
/dev/sdb
(您可以使用
sudo fdisk-l
dmesg
grep
来确定
/dev
中的U盘是哪个)

如果您想获取U盘的标签,可以使用
sudo mlabel-i/dev/sdb1-s::
,然后使用
grep
awk
sed

如果您想获得UUID,可以使用
sudoblkid/dev/sdb1


->检测到的USB闪存驱动器的名称是什么意思?我指的是显示名称,即格式化时指定的设备名称。您不格式化磁盘,而是格式化分区(也称为卷)。格式化后指定给它的名称称为卷标。要查询卷标,您不使用任何
USB
API,而是使用文件系统API。您可以使用命令:
lsusb-v-t
确定设备的安装位置,然后将该地址作为参数传递给程序