檢視原始碼 File.Stat (Elixir v1.16.2)
包含檔案資訊的結構。
在 Erlang 中,此結構由 :file_info
記錄表示。因此,此模組也提供用於在 Erlang 記錄和 Elixir 結構之間進行轉換的函式。
其欄位為
size
- 檔案大小(以位元組為單位)。type
-:device | :directory | :regular | :other | :symlink
;檔案類型。access
-:read | :write | :read_write | :none
;目前系統對檔案的存取權。atime
- 上次讀取檔案的時間。mtime
- 上次寫入檔案的時間。ctime
- 此時間欄位的詮釋取決於作業系統。在類 Unix 作業系統中,它是檔案或 inode 上次變更的時間。在 Windows 中,它是建立時間。mode
- 檔案權限。links
- 指向此檔案的連結數目。對於沒有連結概念的檔案系統,此值永遠為 1。major_device
- 識別檔案所在檔案系統。在 Windows 中,數字表示磁碟機,如下所示:0 表示 A:、1 表示 B:,依此類推。minor_device
- 僅對類 Unix 系統上的字元裝置有效。在所有其他情況下,此欄位為零。inode
- 提供 inode 號碼。在非類 Unix 檔案系統中,此欄位將為零。uid
- 指示檔案的所有者。對於非類 Unix 檔案系統,此值將為零。gid
- 指示擁有檔案的群組。對於非類 Unix 檔案系統,此值將為零。
在 atime
、mtime
和 ctime
中傳回的時間類型取決於選項中設定的時間類型。 {:time, type}
,其中類型可以是 :local
、:universal
或 :posix
。預設為 :universal
。
摘要
類型
@type t() :: %File.Stat{ access: :read | :write | :read_write | :none, atime: :calendar.datetime() | integer(), ctime: :calendar.datetime() | integer(), gid: non_neg_integer(), inode: non_neg_integer(), links: non_neg_integer(), major_device: non_neg_integer(), minor_device: non_neg_integer(), mode: non_neg_integer(), mtime: :calendar.datetime() | integer(), size: non_neg_integer(), type: :device | :directory | :regular | :other | :symlink, uid: non_neg_integer() }
函數
@spec from_record(:file.file_info()) :: t()
將 :file_info
記錄轉換為 File.Stat
。
@spec to_record(t()) :: :file.file_info()
將 File.Stat
結構轉換為 :file_info
記錄。