J'ai remarqué que chaque image DVD a un nom en majuscule semi-unique. Existe-t-il un moyen standardisé de lire simplement ce nom en tant qu'utilisateur non root sous Linux? Je suis sur un dérivé d'Ubuntu 12.04 exécutant le noyau 3.7. Je voudrais simplement obtenir le nom de n'importe quel disque actuellement dans le lecteur comme ceci:
DVD_NAME="$( ./read-dvd-name.sh )"
Réponses:
Vous pouvez utiliser
blkid
pour cela:(vous devez avoir une autorisation de lecture
/dev/dvd
pour cela).Ou:
pour lequel vous n'avez besoin d'aucun privilège spécial (
udev
(en cours d'exécution en tant que root) interroge le nom de l'étiquette en utilisantblkid
et met à jour une base de données de périphériques avec laquelle vous interrogezudevadm
).la source
Je ne sais pas si cela pourrait vous aider:
Ma solution originale maladroite:
la source
isoinfo
-i /dev/cdrom
-d …
… -i
iso_image_filename
…
awk
est un puissant outil de traitement de texte; vous n'avez presque jamais besoin de l'utiliser en conjonction avec un autre outil de traitement de texte tel quegrep
. Votre pipeline,,grep "Volume id:" | awk '{print $3}'
peut être simplifié enawk '/Volume id: / {print $3}'
. (3) Les identifiants de volume peuvent être composés de plusieurs mots, et cetteprint $3
approche n'affiche que le premier. Il existe des moyens de gérer cela dansawk
, mais une approche plus simple consiste à diriger la sortie deisoinfo
verssed -n 's/Volume id: //p'
. (4) En tant que contrôle de santé mentale, il serait préférable de rechercher/^Volume id: /
.