Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Enumerações
Este artigo documenta as enumerações na implementação C++17 std::filesystem do <filesystem> cabeçalho.
Note
Esta página documenta as enumerações C++17 std::filesystem . Para obter as enumerações pré-existentes históricas fornecidas pelo <experimental/filesystem>MSVC, consulte <experimental/filesystem> enumerações.
Requisitos
Cabeçalho:<filesystem>
Namespace:std::filesystem
copy_options
Uma enumeração de valores de máscara de bits que copy você usa e copy_file funções para especificar o comportamento.
Sintaxe
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
};
Valores
| Nome | Descrição |
|---|---|
none |
Executa o comportamento padrão da operação. |
skip_existing |
Não copia se o arquivo já existir, não relata um erro. |
overwrite_existing |
Substitui o arquivo se ele já existir. |
update_existing |
Substitui o arquivo se ele já existir e for mais antigo que a substituição. |
recursive |
Copia recursivamente subdiretórios e seus conteúdos. |
copy_symlinks |
Copia links simbólicos como links simbólicos, em vez de copiar os arquivos para os quais eles apontam. |
skip_symlinks |
Ignora links simbólicos. |
directories_only |
Iterar somente diretórios, ignora arquivos. |
create_symlinks |
Faz links simbólicos em vez de copiar arquivos. Um caminho absoluto deve ser usado como o caminho de origem, a menos que o destino seja o diretório atual. |
create_hard_links |
Faz links físicos em vez de copiar arquivos. |
directory_options
Uma enumeração bitmask que controla como a iteração de diretório lida com links simbólicos para diretórios e erros negados por permissão.
Sintaxe
enum class directory_options {
none = 0,
follow_directory_symlink = 1,
skip_permission_denied = 2
};
Valores
| Nome | Descrição |
|---|---|
none |
Comportamento padrão: não siga links simbólicos para diretórios e trate a permissão negada como um erro. |
follow_directory_symlink |
Siga links simbólicos para diretórios em vez de ignorá-los. |
skip_permission_denied |
Ignore silenciosamente os diretórios que, de outra forma, resultariam em um erro negado por permissão. |
file_type
Uma enumeração de tipos de arquivo.
Sintaxe
enum class file_type {
none = 0,
not_found,
regular,
directory,
symlink,
block,
character,
fifo,
socket,
unknown
};
O padrão C++ não corrige os valores inteiros subjacentes desses enumeradores, portanto, não depende de valores numéricos específicos.
Valores
| Nome | Descrição |
|---|---|
none |
O tipo de arquivo ainda não foi avaliado ou ocorreu um erro ao avaliá-lo. |
not_found |
O arquivo não foi encontrado. |
regular |
Um arquivo normal. |
directory |
Um diretório. |
symlink |
Um link simbólico. |
block |
Um arquivo especial de bloco. (Não usado em Windows.) |
character |
Um arquivo especial de caractere. (Não usado em Windows.) |
fifo |
Um fifo ou arquivo de pipe. (Não usado em Windows.) |
socket |
Um soquete. (Não usado em Windows.) |
unknown |
O arquivo existe, mas seu tipo não pode ser determinado. |
perm_options
Uma enumeração bitmask que controla como a permissions função aplica bits de permissão.
Sintaxe
enum class perm_options {
replace = 1,
add = 2,
remove = 4,
nofollow = 8
};
Valores
| Nome | Descrição |
|---|---|
replace |
Substitua os bits de permissão do arquivo pelas permissões especificadas. |
add |
Adicione os bits de permissão especificados às permissões atuais do arquivo. |
remove |
Remova os bits de permissão especificados das permissões atuais do arquivo. |
nofollow |
Altere as permissões de um link simbólico em si, em vez do arquivo para o qual ele resolve. |
Perms
Uma enumeração bitmask de bits de permissão de arquivo. Em Windows, os valores com suporte são essencialmente "somente leitura" e all. Para um arquivo somente leitura, nenhum dos *_write bits está definido. Caso contrário, o all bit (0777) está definido.
Sintaxe
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
};