Pular para o conteúdo principal

Obter os atributos de um arquivo (file.attrs)

Declaração

tabela_de_atributos, mensagem_de_erro = file.attrs(caminho_do_diretório [, campo_solicitado])

Parâmetros

  • caminho do diretório
    Texto.
  • campo solicitado
    Parâmetro opcional, aceitando três formas:
    • omitido: cria e retorna uma tabela de atributos com todos os campos
    • uma tabela: não cria outra tabela; preenche a tabela recebida com os atributos
    • um nome de campo: retorna diretamente o valor desse campo
    • "dev": dispositivo onde está o inode do arquivo
    • "ino": número do inode do arquivo
    • "mode": tipo de arquivo, podendo ser "file", "directory", "link", "socket", "named pipe", "char device", "block device" ou "other"
    • "nlink": quantidade de hard links
    • "uid": ID do proprietário do arquivo
    • "gid": ID do grupo do arquivo
    • "rdev": tipo de dispositivo do inode de um arquivo especial
    • "access": horário do acesso mais recente
    • "modification": horário da modificação mais recente
    • "change": horário da última alteração de estado
    • "size": tamanho do arquivo em bytes
    • "permissions": permissões do arquivo
    • "blksize": tamanho do bloco de I/O do sistema de arquivos
    • "blocks": quantidade de blocos de 512 bytes alocados ao arquivo

Valores retornados

  • tabela de atributos
    Tabela; retorna a tabela de atributos em caso de sucesso e nil em caso de falha.
  • mensagem de erro
    Texto; mensagem de erro em caso de falha.

Observações

Obtém os atributos do arquivo; se o destino for um link simbólico, retorna os atributos do arquivo apontado pelo link, equivalentes a lfs.attributes.
Disponível somente em versões posteriores a 20250705.

Exemplo

local info, err = file.attrs("/var/mobile/Media/1ferver/lua/scripts/")
if info then
sys.alert("文件信息:"..json.encode(info))
else
sys.alert("获取文件属性失败:"..err)
end

Observação: o código acima usa a função sys.alert, que não pertence a este capítulo.