这条笔记主要记录一件事:如果拿到的是
uuid1,可以直接从时间字段反推出它的大致生成时间。
1. 先生成或读取一个 UUID
import uuid
u = uuid.uuid1()
u = uuid.UUID("2c1af3a6b7f511ed80c21554341098f8")
这里要注意,只有 uuid1 这类带时间字段的 UUID,才适合继续往下做时间解析。
2. 把 UUID 时间字段转换成 datetime
import datetime
timestamp = (u.time - 0x01B21DD213814000) / 1e7
dt = datetime.datetime.fromtimestamp(timestamp)
print(dt)
核心点只有两个:
u.time的单位是 100ns0x01B21DD213814000是 UUID 时间基准到 Unix 时间基准之间的偏移量
换算完成后,就能得到这个 uuid1 对应的大致生成时间。
3. 参考链接
https://juejin.cn/post/6923014125652181000#heading-10
FEATURED TAGS
Git
Cheat Sheet
Markdown
Tools
C++
Linker
Thread
Linux
TCP
Network
GDB
Debug
leetcode
链表
WSL
Ubuntu
Windows
Linux Kernel
GCC
Android
adb
Troubleshooting
Profiling
Sanitizer
glibc
MySQL
Database
Python
curl
Build
ELF
clang-format
CMake
Graphviz
Performance
vcpkg
Protobuf
排查
速查
内存
STL
调试
性能分析
性能
读书笔记
方法论
架构
网络
Timer
mbedTLS
TLS
安全
负载均衡
脚本
工具
LRU
二叉树
BST
中序遍历
回溯
二分查找
优先队列
排序
旋转数组
jenkins
部署