En théorie stat
vous indiquera le périphérique sur lequel se trouve le fichier, et il devrait y avoir un moyen de mapper le périphérique à un point de montage.
Par exemple, sous Linux, cela devrait fonctionner :
stat -c '%m' $path
df
prend le chemin comme paramètre, donc quelque chose comme ça devrait être assez robuste ;
df "$path" | tail -1 | awk '{ print $6 }'
J'ai toujours été fan de l'utilisation des options de formatage d'un programme, car cela peut être plus robuste que la manipulation de la sortie (par exemple, si le point de montage contient des espaces). GNU df
permet ce qui suit :
df --output=target "$path" | tail -1
Malheureusement, je ne vois aucune option pour empêcher l'impression d'un en-tête, donc la queue est toujours requise.