ファイル属性を取得 (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 を使用しています