Tệp

Báo cáo vấn đề Xem nguồn Nightly · 8.3 · 8.2 · 8.1 · 8.0 · 7.6

Đố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 tay cầm tệp mở và không thể dùng để đọc hoặc ghi trực tiếp nội dung tệp. Thay vào đó, bạn dùng đối tượng này để tạo biểu đồ thao tác trong một hàm triển khai quy tắc bằng cách truyền đối tượng đó đến các hàm tạo thao tác. Hãy xem trang Quy tắc để biết thêm thông tin.

Khi File được truyền đến một đối tượng Args mà không dùng hàm map_each, đối tượng đó 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

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. Đường dẫn này được lấy từ path và luôn tương ứng với thư mục thực thi.

Kiểm tra an toàn

string File.extension

Phần mở rộng 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. Điều này phản ánh loại mà tệp được khai báo (tức là ctx.actions.declare_directory), chứ không phải loại của tệp trên hệ thống tệp (có thể khác).

is_source

bool File.is_source

Trả về true nếu đây là một tệp nguồn, tức là tệp này không được tạo.

bool File.is_symlink

Trả về true nếu tệp này được khai báo là một đường liên kết tượng trưng. Điều này phản ánh loại tệp được khai báo (tức là ctx.actions.declare_symlink), chứ không phải loại tệp trên hệ thống tệp (có thể khác).

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.

đườ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. Nó bao gồm hai phần, phần đầu tiên không bắt buộc được gọi là root (xem thêm mô-đun root) 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, đường dẫn này thường chứa một đoạn đường dẫn dành riêng cho cấu hình, mã hoá những nội dung như cấu trúc CPU mục tiêu được 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 runfiles của một tệp nhị phân.

gốc

root File.root

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

short_path

string File.short_path

Đường dẫn của tệp này so với thư mục gốc. Thao tác này sẽ loại trừ root nêu trên, tức là các mảnh dành riêng cho cấu hình 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 runfiles 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 gốc của cây tổ tiên, nếu trường is_directory của tổ tiên là true. tree_relative_path chỉ có sẵn cho các tệp mở rộng của một thư mục trong 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ẽ gây ra lỗi.