Voltar à lista
Linux x86_64Sistema de arquivos#4

stat

Consulta metadados de um arquivo, referenciado por caminho (tamanho, dono, permissões, timestamps).

Descrição

Segue links simbólicos — para inspecionar o link em si, use `lstat`. Base da função de biblioteca `stat(2)` e do comando `stat(1)`.

Header: sys/stat.hman 2

Nota

Em código novo, `statx` (syscall 332) oferece mais campos (incluindo timestamp de criação, quando suportado pelo sistema de arquivos) e controle mais fino sobre o que é consultado.

Assinatura

int stat(const char * pathname, struct stat * statbuf);

Parâmetros

ParâmetroTipoDescrição
pathnameconst char *Caminho do arquivo.
statbufstruct stat *Recebe os metadados do arquivo.

Registradores (x86_64)

RegistradorPapelArgumento
raxnúmero da syscall (chamada) / valor de retorno (após SYSCALL)
rdiargumento 1pathnameconst char *
rsiargumento 2statbufstruct stat *

Valor de retorno

0 em sucesso; -1 em erro, com errno definido.

Códigos de erro (errno)

EACCES(13)
Permissão negada.
EFAULT(14)
Endereço de memória inválido (ponteiro fora do espaço de endereçamento válido).
ELOOP(40)
Excesso de níveis de links simbólicos (loop de symlinks).
ENAMETOOLONG(36)
Nome de arquivo/caminho grande demais.
ENOENT(2)
Arquivo ou diretório inexistente.
ENOTDIR(20)
Não é um diretório.

Relacionadas