Generate a Unix timestamp-based UUID v7 with millisecond precision, ideal for database primary keys.
Code
Utilitiest=$(date +%s%3N)
r=$(od -An -tx1 -N10 /dev/urandom | tr -d ' \n')
printf '%08x-%04x-7%s-%04x-%s\n' \
$(( t >> 16 )) \
$(( t & 0xffff )) \
"${r:0:3}" \
$(( (0x${r:3:4} & 0x3fff) | 0x8000 )) \
"${r:7:12}"Server
More Bash Snippets
Generate UUID v1
Generate a time-based UUID v1 using timestamp and random node ID.
Generate UUID v3
Generate a name-based UUID v3 using MD5 hashing of namespace and name.
Generate UUID v4
Generate a random UUID v4 (Universally Unique Identifier).
Generate UUID v5
Generate a name-based UUID v5 using SHA-1 hashing of namespace and name.
Generate UUID v6
Generate a reordered time-based UUID v6 with improved sortability for databases.
Array Difference
Find elements in the first array that are not present in the second array.