這個物件會在分析階段建立,用來代表會在執行階段讀取或寫入的檔案或目錄。這不是開啟的檔案句柄,無法用於直接讀取或寫入檔案內容。您會將這個註解傳送至建立動作的函式,藉此在規則實作函式中建構動作圖。詳情請參閱規則頁面。
將 File
傳遞至 Args
物件時,如未使用 map_each
函式,系統會擷取 path
欄位的值,將該物件轉換為字串。
成員
basename
string File.basename這個檔案的基礎名稱。這是目錄內的檔案名稱。
目錄名稱
string File.dirname包含此檔案的目錄名稱。這個 ID 取自 path,且一律相對於執行目錄。
擴充功能
string File.extension此檔案的副檔名,接在最右側點後(不含)。如果檔案的基準名稱不含句點,則為空白字串。
is_directory
bool File.is_directory如果這是目錄,則傳回 true。
is_source
bool File.is_source如果這是來源檔案,也就是並非系統產生的檔案,則傳回 true。
擁有者
Label File.owner產生這個檔案的目標標籤。 可能會傳回
None
。
路徑
string File.path這個檔案的執行路徑,相對於工作區執行目錄。這個路徑包含兩個部分,第一個部分是可選的 root (請參閱 root 模組),第二個部分則是
short_path
。根層級可能空白,這通常用於未產生的檔案。對於產生的檔案,它通常會包含設定檔專屬的路徑片段,用於編碼建構該檔案時使用的目標 CPU 架構等項目。如果檔案位於二進位檔的執行檔案中,請針對檔案對應的路徑使用 short_path
。
root
root File.root這個檔案所在的根目錄。
short_path
string File.short_path這個檔案的根目錄相對路徑。但不包含上述「根」,也就是路徑的特定設定片段。如果檔案位於二進位檔的執行檔案中,這也會是對應檔案的路徑。
tree_relative_path
string File.tree_relative_path如果祖系的 is_directory 欄位為 true,則這個檔案的相對路徑即為祖系樹狀結構的根層級。
tree_relative_path
僅適用於動作指令中目錄的展開檔案,例如 Args.add_all()。如果是其他類型的檔案,則存取此欄位會發生錯誤。