跳到主要内容

获取文件属性 (file.attrs)

声明

属性表, 错误信息 = file.attrs(目录路径 [, 请求字段])

参数

  • 目录路径
    文本型
  • 请求字段
    表型,可选参数,如果指定了,则不会创建新表返回内容,而是填充参数指定的那个表
    文本型,可选参数,如果未指定,则返回包含所有字段的表
    • "dev":这表示文件的 inode 所在的设备
    • "ino":文件的 inode 号
    • "mode":文件类型,可能是 "file", "directory", "link", "socket", "named pipe", "char device", "block device" 或 "other"
    • "nlink":硬链接数
    • "uid":文件所有者 ID
    • "gid":文件所有者组 ID
    • "rdev":特殊文件 inode 的设备类型
    • "access":文件最近访问时间
    • "modification":文件最近修改时间
    • "change":文件状态最近改变时间
    • "size":文件大小,单位为字节
    • "permissions":文件权限
    • "blksize":文件系统 I/O 的块大小
    • "blocks":文件已分配的 512 字节块数

返回值

  • 属性表
    表型,操作成功返回属性表,操作失败返回 nil
  • 错误信息
    文本型,操作失败时的错误信息

说明

获取文件属性,如果文件是符号链接,则返回链接到的目标文件的属性,等同于 lfs.attributes
这个函数在 20250705 以后版本方可使用

示例

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

:上述代码中使用了非本章函数 sys.alert