Frage

Gibt es eine Methode in Boost :: Dateisystem, die den Dateisystemtyp für einen Pfad angibt, wie von vorhanden ist?

$ stat -f -L -c %T .
ext2/ext3

Ich möchte nicht unbedingt eine Zeichenfolge. Ein aufgezählter Wert würde tun.

War es hilfreich?

Lösung

Ich glaube nicht, dass Boost eine Möglichkeit zum Abfragen von Dateisystemtypen bietet. Möglicherweise möchten Sie jedoch die STATFS -Funktion für diesen Zweck verwenden. Aus der Mann Seite -

Die Funktion STATFS () gibt Informationen zu einem montierten Dateisystem zurück. Pfad ist der Pfadname einer beliebigen Datei innerhalb des montierten Dateisystems. BUF ist ein Zeiger auf eine StatFS -Struktur, die ungefähr wie folgt definiert ist:

       struct statfs {
           __SWORD_TYPE f_type;    /* type of file system (see below) */
           __SWORD_TYPE f_bsize;   /* optimal transfer block size */
           fsblkcnt_t   f_blocks;  /* total data blocks in file system */
           fsblkcnt_t   f_bfree;   /* free blocks in fs */
           fsblkcnt_t   f_bavail;  /* free blocks available to
                                      unprivileged user */
           fsfilcnt_t   f_files;   /* total file nodes in file system */
           fsfilcnt_t   f_ffree;   /* free file nodes in fs */
           fsid_t       f_fsid;    /* file system id */
           __SWORD_TYPE f_namelen; /* maximum length of filenames */
           __SWORD_TYPE f_frsize;  /* fragment size (since Linux 2.6) */
           __SWORD_TYPE f_spare[5];
       };
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top