Tệp

Đố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 ô điều khiển 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 biểu đồ đó vào hàm tạo hành động. Hãy xem trang Quy tắc để biết thêm thông tin.

Khi truyền File 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 chuỗi bằng cách lấy giá trị của trường path.

Hội viên

basename

string File.basename

Tên cơ sở của tệp này. Đây là tên của tệp bên trong thư mục.

dirname

string File.dirname

Tên của thư mục chứa tệp này. Tham số này được lấy từ path và luôn tương ứng với 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 có dấu chấm.

is_directory

bool File.is_directory

Trả về true nếu đây là một thư mục.

is_source

bool File.is_source

Trả 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.owner

Nhãn của một mục tiêu tạo ra Tệp này. Có thể trả về None.

path

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. Cấu trúc này bao gồm hai phần, một phần đầu tiên không bắt buộc có tên 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 và thường dành cho 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 theo cấu hình cụ thể giúp mã hoá những thứ 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ạ 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.root

Thư mục gốc bên dưới tệp này.

short_path

string File.short_path

Đường dẫn của tệp này tương ứng với thư mục gốc. Điều này loại trừ các gốc nói trên, tức là các mảnh cấu hình cụ thể của đường dẫn. Đây cũng là đường dẫn mà theo đó tệp được ánh xạ 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 tương ứng với thư mục gốc của cây đố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ỉ dành 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, việc truy cập vào trường này sẽ bị lỗi.