0 votes

Déterminer le périphérique pour un fichier

Dans un script shell, je dois déterminer le périphérique pour un fichier, puis l'utiliser avec diskutil, par exemple...

# ??? Assigner le périphérique à FileDevice, en fonction du chemin complet.
diskutil info $FileDevice

0 votes

Comment cela se rapporte-t-il à votre autre question ?

0 votes

Mon besoin fonctionnel a légèrement changé depuis celui-là; maintenant c'est de déterminer le type de volume, pas seulement s'il s'agit d'APFS ou non.

1 votes

@nohillside Voici ma solution combinée : Renvoie la personnalité du système de fichiers pour un fichier : diskutil info $(df $filepath | sed -n 2p | cut -d ' ' -f 1) | grep '^ Personnalité du système de fichiers :*' | sed 's/ Personnalité du système de fichiers : (.*)$/\1/'

2voto

nohillside Points 82672
df /chemin/vers/fichier | sed -n 2p | cut -d ' ' -f 1

vous donnera le périphérique sur lequel se trouve le fichier. Pour combiner ceci directement avec diskutil info utilisez

diskutil info $(df /chemin/vers/fichier | sed -n 2p | cut -d ' ' -f 1)

1voto

JohnoBoy Points 16435

La manière la plus simple de déterminer le périphérique contenant un fichier est d'utiliser df. Par exemple:

$ df /Users/mj/bin/imgls
Filesystem   1K-blocs     Utilisés Disponible Capacité iutilisés               idispo %iutilisé  Monté sur
/dev/disk1s1 488347692 418217076  38565452    92% 3141515 9223372036851634292    0%   /

Vous pouvez utiliser cut si vous voulez juste le périphérique (j'ai utilisé tail comme moyen rudimentaire pour enlever l'en-tête df).

$ df /Users/mj/bin/imgls | tail -1  | cut -d ' ' -f 1
/dev/disk1s1

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X