Đối tượng này được tạo trong giai đoạn phân tích để biểu thị một tệp hoặc thư mục sẽ được đọc hoặc ghi trong giai đoạn thực thi. Đây không phải là một handle tệp mở và không thể dùng để trực tiếp đọc hoặc ghi nội dung tệp. Thay vào đó, bạn sử dụng hàm này để tạo biểu đồ hành động trong hàm triển khai quy tắc bằng cách truyền hàm này đến các hàm tạo hành động. Hãy xem trang Quy tắc để biết thêm thông tin.
Khi File
được truyền vào đối tượng Args
mà không sử dụng hàm map_each
, đối tượng này sẽ được chuyển đổi thành một chuỗi bằng cách lấy giá trị của trường path
.
Hội viên
- basename
- dirname
- tiện ích
- is_directory
- is_source
- owner
- đường dẫn
- bản gốc
- short_path
- tree_relative_path
basename
string File.basenameTên cơ sở của tệp này. Đây là tên của tệp trong thư mục.
dirname
string File.dirnameTên của thư mục chứa tệp này. Giá trị này được lấy từ path và luôn liên quan đến thư mục thực thi.
phần mở rộng
string File.extensionĐuôi tệp của tệp này, theo sau (không bao gồm) dấu chấm ở ngoài cùng bên phải. Chuỗi trống nếu tên cơ sở của tệp không chứa dấu chấm.
is_directory
bool File.is_directoryTrả về true nếu đây là thư mục.
is_source
bool File.is_sourceTrả về true nếu đây là tệp nguồn, tức là tệp này không được tạo.
chủ sở hữu
Label File.ownerNhãn của một mục tiêu tạo ra Tệp này. Có thể trả về
None
.
đường dẫn
string File.pathĐường dẫn thực thi của tệp này, tương ứng với thư mục thực thi của không gian làm việc. Lớp này bao gồm hai phần, phần đầu tiên (không bắt buộc) gọi là gốc (xem thêm mô-đun gốc) và phần thứ hai là
short_path
. Thư mục gốc có thể trống, thường là đối với các tệp không được tạo. Đối với các tệp được tạo, tệp này thường chứa một mảnh đường dẫn dành riêng cho cấu hình, mã hoá các nội dung như cấu trúc CPU mục tiêu được sử dụng trong khi tạo tệp đó. Sử dụng short_path
cho đường dẫn mà tệp được ánh xạ theo đó nếu tệp nằm trong các tệp chạy của một tệp nhị phân.
gốc
root File.rootThư mục gốc nằm bên dưới tệp này.
short_path
string File.short_pathĐường dẫn của tệp này so với thư mục gốc. Quy tắc này không bao gồm gốc nêu trên, tức là các mảnh theo cấu hình cụ thể của đường dẫn. Đây cũng là đường dẫn mà tệp được ánh xạ theo đó nếu tệp nằm trong các tệp chạy của một tệp nhị phân.
tree_relative_path
string File.tree_relative_pathĐường dẫn của tệp này so với thư mục gốc của cây của đối tượng cấp trên, nếu trường is_directory của đối tượng cấp trên là đúng.
tree_relative_path
chỉ có sẵn cho các tệp mở rộng của một thư mục trong một lệnh hành động, tức là Args.add_all(). Đối với các loại tệp khác, bạn không thể truy cập vào trường này.