次の方法で共有


<filesystem> 列挙型

このトピックでは、filesystem ヘッダーの列挙体について説明します。

要件

ヘッダー:<experimental/filesystem>

名前空間: std::experimental::filesystem

copy_options

動作を指定するために copy および copy_file 関数で使用されるビットマスク値の列挙体。

構文

enum class copy_options {
   none = 0,
   skip_existing = 1,
   overwrite_existing = 2,
   update_existing = 4,
   recursive = 8,
   copy_symlinks = 16,
   skip_symlinks = 32,
   directories_only = 64,
   create_symlinks = 128,
   create_hard_links = 256
};

名前 説明
none 演算の既定の動作を実行します。
skip_existing ファイルが既に存在する場合はコピーしません。エラーをレポートしません。
overwrite_existing ファイルが既に存在する場合、ファイルを上書きします。
update_existing ファイルが既に存在し、そのファイルの方が古い場合、ファイルを上書きします。
recursive サブディレクトリとその内容を再帰的にコピーします。
copy_symlinks シンボリック リンクが示すファイルをコピーするのではなく、シンボリック リンクをシンボリック リンクとしてコピーします。
skip_symlinks シンボリック リンクを無視します。
directories_only ディレクトリに対してのみ反復処理を実行します。ファイルを無視します。
create_symlinks ファイルをコピーするのではなく、シンボリック リンクを作成します。 対象がカレント ディレクトリではない場合、ソース パスとして絶対パスを使用する必要があります。
create_hard_links ファイルをコピーするのではなく、ハード リンクを作成します。

directory_options

ディレクトリへのシンボリック リンクに従うか、無視するかを指定します。

構文

enum class directory_options {
   none = 0,
   follow_directory_symlink
};

名前 説明
none 既定の動作: ディレクトリへのシンボリック リンクを無視します。 アクセス許可の拒否はエラーです。
follow_directory_symlink ディレクトリへのシンボリック リンクを実際のディレクトリとして処理します。

file_type

ファイルの種類の列挙型。 サポートされる値は、regular、directory、not_found、unknown です。

構文

enum class file_type {
    not_found = -1,
    none,
    regular,
    directory,
    symlink,
    block,
    character,
    fifo,
    socket,
    unknown
};

名前 説明
not_found -1 存在しないファイルを表します。
none 0 type 属性を持たないファイルを表します (サポートされていません)。
regular 1 従来のディスク ファイルを表します。
directory 2 ディレクトリを表します。
symlink 3 シンボリック リンクを表します (サポートされていません)。
block 4 UNIX ベースのシステム上のブロック型特殊ファイルを表します (サポートされていません)。
character 5 UNIX ベースのシステム上の文字型特殊ファイルを表します (サポートされていません)。
fifo 6 UNIX ベースのシステム上の FIFO ファイルを表します (サポートされていません)。
socket 7 UNIX ベースのシステム上のソケットを表します (サポートされていません)。
unknown 8 状態が確認できないファイルを表します。

perm_options

replaceaddremovenofollow が含まれます。

enum class perm_options;

perms

ファイルのアクセス許可のフラグを設定します。 サポートされる値は、基本的に "readonly" と all です。 readonly ファイルの場合、*_write ビットは設定されません。 それ以外の場合、 all ビット (0x0777) が設定されます。

構文

enum class perms {// names for permissions
   none = 0,
   owner_read = 0400,  // S_IRUSR
   owner_write = 0200, // S_IWUSR
   owner_exec = 0100,  // S_IXUSR
   owner_all = 0700,   // S_IRWXU
   group_read = 040,   // S_IRGRP
   group_write = 020,  // S_IWGRP
   group_exec = 010,   // S_IXGRP
   group_all = 070,    // S_IRWXG
   others_read = 04,   // S_IROTH
   others_write = 02,  // S_IWOTH
   others_exec = 01,   // S_IXOTH
   others_all = 07,    // S_IRWXO
   all = 0777,
   set_uid = 04000,    // S_ISUID
   set_gid = 02000,    // S_ISGID
   sticky_bit = 01000, // S_ISVTX
   mask = 07777,
   unknown = 0xFFFF,
   add_perms = 0x10000,
   remove_perms = 0x20000,
   resolve_symlinks = 0x40000
};

関連項目

ヘッダー ファイル リファレンス
<filesystem>