Datum: 2006-08-14
Quelle: suse-programming-e
Innerhalb eines C-Programms soll geprüft werden, ob ein bestimmtes Verzeichnis der Mountpunkt eines Dateisystems ist oder nicht.
#include <stdio.h> #include <sys/statvfs.h> int main(int argc, char **argv) { char *p = NULL; struct statvfs st; if (argc == 2) p = argv[1]; else p = "."; statvfs(p, &st); printf("%ld\n", st.f_fsid); exit(0); }
Das Beispiel zeigt, wie man prüfen kann, in welchem Dateisystem sich ein Verzeichnis befindet. Wenn das übergebene Verzeichnis einen Mountpunkt für ein Dateisystem darstellt, dann ist seine f_fsid eine andere als die seines übergeordneten Verzeichnis.