On me remet le chemin d'un répertoire ou d'un fichier.
Quel script utilitaire / shell me donnera de manière fiable l'UUID du système de fichiers sur lequel se trouve ce répertoire / fichier?
Par UUID du système de fichiers, je veux dire l' UUID=...
entrée comme indiqué par exempleblkid
J'utilise Redhat Linux.
(quelqu'un a suggéré que je devrais poser cette question ici à unix.stackexchange.com, donc je l'ai déplacé du stackexchange.com d'origine)
linux
shell
block-device
uuid
linfan
la source
la source
blkid
.Réponses:
Une option est
stat
+findmnt
combo:Ici,
-n
désactive l'en-tête et-o UUID
imprime uniquement la valeur UUID. Option-c '%m'
destat
est présent à la sortie que point de montage chemin donné.la source
stat
:findmnt -no uuid -T "$path"
Vous pouvez utiliser df pour trouver le point de montage du fichier, puis appliquer le résultat à blkid à l'UUID. Vous devez exécuter (au moins) blkid en tant que root pour que cela fonctionne:
la source
-o export
, car cela imprime la sortie du formulaireUUID=...
.-o value
) ou uneUUID="value"
expression de type (-o export
). J'ai choisi la valeur.