Namespaces
Variants

std::experimental::filesystem:: space_info

From cppreference.net
ヘッダーで定義 <experimental/filesystem>
struct space_info {

uintmax_t capacity ;
uintmax_t free ;
uintmax_t available ;

} ;
(filesystem TS)

space によって決定されたファイルシステム情報を表します。

メンバーは以下の意味を持ちます:

  • capacity -- ファイルシステムの総容量(バイト単位)
  • free -- ファイルシステムの空き容量(バイト単位)
  • available -- 非特権プロセスが利用可能な空き容量( free と等しいかそれ以下の値)

#include <experimental/filesystem>
#include <iostream>
namespace fs = std::experimental::filesystem;
int main()
{
    fs::space_info devi = fs::space("/dev/null");
    fs::space_info tmpi = fs::space("/tmp");
    std::cout << "         Capacity         Free    Available\n"
              << "/dev:   " << devi.capacity << "   "
              << devi.free << "   " << devi.available << '\n'
              << "/tmp: " << tmpi.capacity << ' '
              << tmpi.free << ' ' << tmpi.available << '\n';
}

出力例:

          Capacity         Free    Available
/dev:   4175114240   4175110144   4175110144
/tmp: 420651237376 411962273792 390570749952

関連項目

ファイルシステム上の利用可能な空き容量を判定する
(関数)