LINUX.ORG.RU

Re: Как определить свободное место на диске на C/C++

например посмотреть как это делает df

cvv ★★★★★ ()

Re: Как определить свободное место на диске на C/C++

man statfs

idle ★★★★★ ()

Re: Как определить свободное место на диске на C/C++

Обобщённый ответ: использовать системные вызовы ОС (system calls)

Selecter ★★★★ ()

Re: Как определить свободное место на диске на C/C++

#include <sys/vfs.h>

/**
 * get_fs_size - Определяет размер ФС.
 * @param anyfile Путь к любому файлу на этой ФС.
 * @return Размер ФС в блоках.
 */
long get_fs_size(const char *anyfile)
{
  struct statfs buf;
  statfs(anyfile, &buf);
  return buf.f_blocks;
}

/**
 * get_fs_free - Определяет свободное место на ФС.
 * @param anyfile Путь к любому файлу на этой ФС.
 * @return Размер ФС в блоках.
 */
long get_fs_free(const char *anyfile)
{
  struct statfs buf;
  statfs(anyfile, &buf);
  return buf.f_bfree;
}

Всё гениальное просто... :-)

Spectrum ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.