<filesystem>
sabit listeleri
Bu konu başlığında dosya sistemi üst bilgisindeki sabit listeleri belgelemektedir.
Gereksinimler
Üst bilgi:<experimental/filesystem>
Ad alanı: std::experimental::filesystem
copy_options
Davranışı belirtmek için kopyalama ve copy_file işlevleriyle kullanılan bit maskesi değerlerinin sabit listesi.
Sözdizimi
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
};
Değerler
Veri Akışı Adı | Açıklama |
---|---|
none |
İşlem için varsayılan davranışı gerçekleştirin. |
skip_existing |
Dosya zaten varsa kopyalamayın, hata bildirmeyin. |
overwrite_existing |
Zaten varsa dosyanın üzerine yaz. |
update_existing |
Zaten varsa ve değiştirmeden daha eskiyse dosyanın üzerine yaz. |
recursive |
Alt dizinleri ve içeriklerini yinelemeli olarak kopyalayın. |
copy_symlinks |
Sembolik bağlantıları işaret ettikleri dosyaları kopyalamak yerine sembolik bağlantılar olarak kopyalayın. |
skip_symlinks |
Sembolik bağlantıları yoksay. |
directories_only |
Yalnızca dizinler üzerinde yineleme yapın, dosyaları yoksayın. |
create_symlinks |
Dosyaları kopyalamak yerine sembolik bağlantılar oluşturun. Hedef geçerli dizin olmadığı sürece kaynak yol olarak mutlak yol kullanılmalıdır. |
create_hard_links |
Dosyaları kopyalamak yerine sabit bağlantılar oluşturun. |
directory_options
Dizinlere yönelik sembolik bağlantıların izlenip izlenmeyeceğini veya yoksayılıp izlenmeyeceğini belirtir.
Sözdizimi
enum class directory_options {
none = 0,
follow_directory_symlink
};
Değerler
Veri Akışı Adı | Açıklama |
---|---|
none |
Varsayılan davranış: Dizinlere sembolik bağlantıları yoksayın. İzin reddedildi hatasıdır. |
follow_directory_symlink |
Dizinlere sembolik bağlantıları gerçek dizinler olarak değerlendirin. |
file_type
Dosya türleri için bir numaralandırma. Desteklenen değerler normal, dizin, not_found ve bilinmiyor.
Sözdizimi
enum class file_type {
not_found = -1,
none,
regular,
directory,
symlink,
block,
character,
fifo,
socket,
unknown
};
Değerler
Veri Akışı Adı | Değer | Açıklama |
---|---|---|
not_found |
-1 | Var olmayan bir dosyayı temsil eder. |
none |
0 | Tür özniteliği olmayan bir dosyayı temsil eder. (Desteklenmez.) |
regular |
1 | Geleneksel bir disk dosyasını temsil eder. |
directory |
2 | Bir dizini temsil eder. |
symlink |
3 | Sembolik bir bağlantıyı temsil eder. (Desteklenmez.) |
block |
4 | UNIX tabanlı sistemlerde blok özel bir dosyayı temsil eder. (Desteklenmez.) |
character |
5 | UNIX tabanlı sistemlerde karaktere özel bir dosyayı temsil eder. (Desteklenmez.) |
fifo |
6 | UNIX tabanlı sistemlerde bir FIFO dosyasını temsil eder. (Desteklenmez.) |
socket |
7 | UNIX tabanlı sistemlerde bir yuvayı temsil eder. (Desteklenmez.) |
unknown |
8 | Durumu belirlenemeyen bir dosyayı temsil eder. |
perm_options
, , add
remove
ve nofollow
değerlerini replace
içerir.
enum class perm_options;
Perma
Dosya izinleri için bayraklar. Desteklenen değerler temelde "salt okunur" ve tümü. Salt okunur bir dosya için *_write bitlerinin hiçbiri ayarlanmadı. all
Aksi takdirde bit (0x0777) ayarlanır.
Sözdizimi
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
};