Ich benötige eine plattformunabhängige und einfache Methode zum Erkennen des Mount-Typs meines CWD. Insbesondere muss festgestellt werden, ob sich mein CWD in einem SSHFS-, NFS-, CIFS-, SMB- oder lokalen Blockspeicher-Mount befindet.
Ich muss dies unter Mac OSX 10.6, 10.7 und RHEL5 (mindestens) tun.
Es gibt eine Möglichkeit, df zu verwenden, aber auf diesen beiden Plattformen verhält sich df ganz anders. Außerdem müsste ich die Ausgabe von CLI mit awk abkratzen, was zwar funktionsfähig, aber ... zerbrechlich ist.
Diese Informationen müssen auf einer bestimmten Ebene verfügbar sein. Gibt es ein Tool, das mir nicht bekannt ist und das mir diese Informationen liefern kann?
quelle
Sie können GNU stat unter Linux verwenden:
quelle
Unter Linux gibt es findmnt seit Util-Linux 2.18.
quelle
Habe es nicht getestet,
df -P
sollte sich aber auf den meisten Plattformen gleich verhalten.Dies funktioniert unter Linux.
Oder brechen Sie es in wiederverwendbare Funktionen:
Und die Funktion aufrufen:
Könnte mit
sed
oder etwas schneller geschrieben werdenawk
, aber dieser Weg ist wahrscheinlich einfacher zu lesen.Wenn dies nicht funktioniert, können Sie etwas Ähnliches ausprobieren, aber
/etc/mtab
statt dessen die Ausgabe von verwendenmount
.quelle
P
indf -P
ist für POSIX, so dass es auf die gleiche Art und Weise verhalten soll. Es ist jedoch komplizierter, vom Dateisystempfad zum Einhängepunkt zu gelangen.