получить тип файловой системы, используя файловую систему boost - PullRequest
0 голосов
/ 17 февраля 2012

Есть ли в boost :: filesystem метод, который дает тип файловой системы для пути, как указано в:

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

Я не обязательно хочу строку.Перечислимое значение будет делать.

1 Ответ

1 голос
/ 22 февраля 2012

Я не думаю, что boost предоставляет какой-либо способ запроса типа файловой системы. Однако вы можете использовать функцию statfs для этой цели. Со страницы руководства -

Функция statfs () возвращает информацию о смонтированной файловой системе. путь - это путь к любому файлу в смонтированной файловой системе. buf - указатель на структуру statfs, определенную примерно следующим образом:

       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];
       };
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...