Aller au contenu principal

Obtenir les attributs d’un lien symbolique (file.lattrs)

Déclaration

table d’attributs, message d’erreur = file.lattrs(chemin du répertoire [, champ demandé])

Paramètres

  • chemin du répertoire
    Chaîne
  • champ demandé
    Paramètre facultatif, trois formes sont prises en charge :
    • omis : crée et renvoie une table d’attributs contenant tous les champs
    • une table (type table) : ne crée pas de table et renseigne celle qui est fournie
    • un nom de champ (chaîne) : renvoie directement la valeur de ce champ
    • "dev" : périphérique où se trouve l’inode du fichier
    • "ino" : numéro d’inode du fichier
    • "mode" : type de fichier, peut être "file", "directory", "link", "socket", "named pipe", "char device", "block device" ou "other"
    • "nlink" : nombre de liens matériels
    • "uid" : ID du propriétaire du fichier
    • "gid" : ID du groupe propriétaire du fichier
    • "rdev" : type de périphérique de l’inode d’un fichier spécial
    • "access" : heure du dernier accès au fichier
    • "modification" : heure de la dernière modification du fichier
    • "change" : heure de la dernière modification de l’état du fichier
    • "size" : taille du fichier, en octets
    • "permissions" : permissions du fichier
    • "blksize" : taille des blocs d’E/S du système de fichiers
    • "blocks" : nombre de blocs de 512 octets alloués au fichier
    • "target" : chemin du fichier vers lequel pointe le lien symbolique

Valeur de retour

  • table d’attributs
    Type table, renvoie la table d’attributs si l’opération réussit et nil dans le cas contraire
  • message d’erreur
    Chaîne, message d’erreur en cas d’échec

Description

Obtient les attributs d’un fichier. Si la cible est un lien symbolique, renvoie les informations du lien lui-même (et non celles de la cible), comme lfs.symlinkattributes
Cette fonction est disponible à partir de la version 20250705

Exemple

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

Remarque : le code ci-dessus utilise la fonction hors de ce chapitre sys.alert