GNU/Linux >> Tutoriels Linux >  >> Linux

Créer des nombres aléatoires uniques (UUID) dans bash

Sous Linux, le util-linux /util-linux-ng package propose une commande pour générer des UUID :uuidgen .

$ uuidgen
5528f550-6559-4d61-9054-efb5a16a4de0

Pour citer le manuel :

Le programme uuidgen crée (et imprime) un nouvel identifiant universel unique (UUID) en utilisant le libuuid (3) bibliothèque. Le nouvel UUID peut raisonnablement être considéré comme unique parmi tous les UUID créés sur le système local et parmi les UUID créés sur d'autres systèmes dans le passé et dans le futur.

Il existe deux types d'UUID que uuidgen peut générer :les UUID basés sur le temps et les UUID basés sur le hasard. Par défaut, uuidgen générera un UUID aléatoire si un générateur de nombres aléatoires de haute qualité est présent. Sinon, il choisira un UUID basé sur le temps. Il est possible de forcer la génération d'un de ces deux types d'UUID en utilisant le -r ou -t options.

Addendum :L'OP avait fourni un lien dans les commentaires vers la documentation de Presto DB. Après un peu de recherche, j'ai trouvé cette discussion connexe où il est explicitement mentionné que le node.id propriété est bien un UUID.

Ajout des informations fournies par frostschutz dans un commentaire :

En alternative au uuidgen /libuuid approche, vous pouvez utiliser une interface exposée par le noyau Linux lui-même pour générer des UUID :

$ cat /proc/sys/kernel/random/uuid
00db2531-365c-415c-86f7-503a35fafa58

L'UUID est regénéré à chaque requête.


Linux
  1. Comment créer un tableau d'éléments uniques à partir d'une chaîne/tableau dans Bash ?

  2. Comment créer des chiffres hexadécimaux aléatoires sans espaces ?

  3. Jumble Password - Créez des identifiants et des mots de passe uniques sous Linux

  4. Comment créer et appeler des fonctions dans Bash

  5. Générer des UUID aléatoires sous Linux

Comment créer des alias Bash

Comment afficher l'historique de Bash sans numéros de ligne

Comment créer des documents avec des scripts Bash

Comment évaluer les chaînes en tant que nombres dans Bash

Script Shell/Bash pour trouver des nombres premiers sous Linux

Comment créer un fichier aléatoire de 1 Go sous Linux ?