Linux获取uuid_查看uuid的命令

Linux获取uuid_查看uuid的命令一、UUID生成(源代码编译)根据定义,UUID(UniversallyUniqueIDentifier,也称GUID)在时间和空间都是唯一的。为保证空间的唯一性,每个UUID使用了一个48位的值来记录,一般是计算机的网卡地址。为保证时间上的唯一性,每个UUID具有一个60位的时间戳(timestamp)。这个时间戳表示自公元1582年(绝对不是1852,这是《COM技术内幕》,1999年3月第1版第89页中的一个错误)10月15号00:00:00:00以来的时间,是以100纳秒为单位的时间间隔

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

一、UUID 生成(源代码编译)

根据定义,UUID(Universally Unique IDentifier,也称GUID)在时间和空间都是唯一的。为保证空间的唯一性,每个UUID使用了一个48位的值来记录,一般是计算机的网卡地址。为保证时间上的唯一性,每个UUID具有一个60位的时间戳(timestamp)。这个时间戳表示自公元1582年(绝对不是1852,这是《COM技术内幕》,1999年3月第1版第89页中的一个错误)10月15号00:00:00:00以来的时间,是以100纳秒为单位的时间间隔。1纳秒(ns)=10-9秒(s)。UUID算法可以保证至大约公元3400年仍然唯一。UUID的C语言结构定义如下:

typedef struct _uuid_t
{

     unsigned long      data1;       
     unsigned short     data2;
     unsigned short     data3;
     unsigned char      data4[8];
} uuid_t;
 
它的结构大小为16个字节。即sizeof(uuid_t)==16为TRUE。写成16进制字符串的格式,一般为:
“xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx”
 
上面的字符串形式,占用36个字符,不包括结尾空字符’/0’。所以,要想容纳一个UUID字符串,必须声明为一个char[36+1]的字符数组。

#include <stdio.h>
#include “uuid/uuid.h”
 
int main(int argc, char **argv)
{

    uuid_t uuid;
    char str[36+1];
 
    uuid_generate(uuid);
    uuid_unparse(uuid, str);
 
    printf(“%s\n”, str);
 
    return 0;
}

在Linux下编译时需要链接uuid库

gcc –o uuid uuid.c –luuid

找不到库,安装库:

ubuntu下安装uuid链接库

sudo apt-get install uuid-dev

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/169240.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • python中抛出异常_python mkdir

    python中抛出异常_python mkdir抛出异常:Python程序中的异常不仅可以自动触发,还可以由开发人员使用raise语句和assert语句主动抛出。使用raise语句抛出异常:1.使用异常类引发异常格式如下:raise异常类#格式1:使用异常类名引发指定的异常示例如下所示:raiseNameError运行界面如下:2.使用异常类对象引发异常格式如下:raise异常类对象#格式2:使用异常类的对象引发指定的异常示例代码如下:raiseNameError()运行…

    2022年10月18日
    0
  • XLSTransformer导出多sheet页

    XLSTransformer导出多sheet页https://blog.csdn.net/z69183787/article/details/51407171?utm_source=app&app_version=4.17.0&code=app_1562916241&uLinkId=usr1mkqgl919blen

    2022年7月24日
    4
  • C语言编程中void什么意思,程序设计中遇到的void到底是什么意思

    C语言编程中void什么意思,程序设计中遇到的void到底是什么意思部分编程的初学者都会问”void是什么意思”,”为什么很多函数前都要加个void”.实际上,void最简单的解释就是把0转换成空类型的意思。下面用各个开发语言来详解void1.C语言中的void表示空类型,它跟int,float是同地位的,一般用在没有返回值的函数中,比如你写voidmain(),主函数完了不用写return语句,但是如果是intmain()或者是main(),你不写r…

    2022年5月12日
    61
  • 永恒之蓝勒索病毒_2019勒索病毒专杀

    永恒之蓝勒索病毒_2019勒索病毒专杀整个的复现的过程需要的环境以及工具有:kali2.0:用来监听获取反弹的shell。ip:192.168.15.174winsever2003:需要装上python环境,勒索病毒攻击机。ip:192.168.15.141win2007:靶机,确保445端口开启。ip:192.168.15.144永恒之蓝python2.6已经在winsever下装python需…

    2022年10月16日
    0
  • 正则表达式全解析+常用示例「建议收藏」

    正则表达式全解析+常用示例「建议收藏」在开始写这篇文章之前,我的心里还是纠结的。我在问自己要不要写这篇东西,关于相似的内容网上多如牛毛,而且还不乏珍品,况且,就算我写了也不一定能写的好。但是现在你既然看到了,那说明我还是写了出来。就算是对自己学习的一个总结吧!同时也把常见的常用的正则表达式给收集整理出来,以便用到的时候不用满世界的找。关于正则表达式一直都是个让很多程序员都觉得很郁闷的一个东西,我觉得创造正则表达式的那个家伙简直就是

    2022年5月17日
    41
  • python之sympy库–在线性代数领域的应用

    python之sympy库–在线性代数领域的应用sympy作为相对比较全的数学计算库,其也包含针对线性代数的符号运算部分,本文着重介绍sympy在处理线性代数相关问题时的使用方法,且基本严格结合线性代数教材(同济大学版),便于大家回顾,如果想了解sympy在初等代数或微积分方面的应用,可以看文章《python之sympy库–数学符号计算与绘图必备》。一、矩阵运算1.1创建矩阵创建矩阵是使用sympy处理线性代数问题的起点,以下主要介绍通用创建矩阵的方式以及快速创建特殊矩阵的方式,且一部分主要对应于线性代数教材(同济大学版)的第一章和第二章

    2022年5月14日
    92

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号