我有一个到分区的路径。如何在不使用终端命令的情况下通过编程方式检索该分区的UUID?一个示例将更有帮助。
我有一个到分区的路径。如何在不使用终端命令的情况下通过编程方式检索该分区的UUID?一个示例将更有帮助。
$ diskutil info / | grep UUID
将此命令从C语言中运行留给读者自己练习。
如果你想要除了根目录之外的其他分区,你可以在/
的位置指定挂载点或设备名称(例如disk0s2)。
我认为最简单的方法是使用polkit
从http://polkit.googlecode.com/svn/trunk/FileSystem/DiskWatcher.h 和 http://polkit.googlecode.com/svn/trunk/FileSystem/DiskWatcher.m 下载 DiskWatcher.h 和 .m 文件。
将它们添加到您的项目中(它没有 ARC,如果您使用 ARC,则需要添加 -fno-objc-arc 标志)
添加 DiskArbiratation 框架 您可以使用
+ (NSString*) diskIdentifierForPath:(NSString*)path;
NSString *UUID1 = [DiskWatcher diskIdentifierForPath:@"/Volumes/Backup900GB"];
$ diskutil info /Volumes/Mulch | grep UUID
Volume UUID: E1EAC65D-47A2-3AB3-BCE5-BA25FD2C6A30
Disk / Partition UUID: E24032E3-DC36-470E-86B9-C9664026F8EC
- FutureNerd