工具
直接使用 uuidgen
工具产生 UUID
$ uuidgend986f37d-1288-41be-9c5a-37a4b494665b
基于 uuid
开发
基于 uuid
开发,准确点说是 libuuid
开发,有几个思路:
-
看看
uuidgen
的源代码是怎么实现,沿着这条线索寻找,在我的Ubuntu 14.04
系统上输入命令:$ uuidgen --version uuidgen from util-linux 2.20.1
发现
uuidgen
是属于 包的一部分,利用 搜索 util-linux 关键字。啊哈,感觉发现了新大陆。util-linux
在 上的官方网址:下载:
另外,Debian 系统的
apt-get
系统提供了util-linux
的源码包,只需简单的命令即可下载:$ apt-get source util-linux
该方法类似于之前的 一文所言。接下来我从下载到的源码中找到 文件,非常简短的一份文件,其中的核心代码
#include "uuid.h" int main (int argc, char *argv[]) { char str[37]; uuid_t uu; uuid_generate(uu); uuid_unparse(uu, str); printf("%s\n", str); return EXIT_SUCCESS; }
啊哈,如此简单。关键代码
uuid_generate(uu);
通过它产生出来的
uu
值交由uuid_unparse
解析uuid_unparse(uu, str);
即得到最上面用工具
uuidgen
产生 UUID 的效果。