파일

문제 신고 소스 보기

이 객체는 실행 단계 중에 읽거나 쓸 파일 또는 디렉터리를 나타내기 위해 분석 단계 중에 생성됩니다. 열린 파일 핸들이 아니며 파일 콘텐츠를 직접 읽거나 쓰는 데 사용할 수 없습니다. 대신 규칙 생성 함수를 작업 생성 함수에 전달하여 규칙 구현 함수에서 작업 그래프를 구성하는 데 사용합니다. 자세한 내용은 규칙 페이지를 참조하세요.

File 함수가 map_each 함수를 사용하지 않고 Args 객체에 전달되면 path 필드의 값을 사용하여 문자열로 변환됩니다.

구성원

기본 이름

string File.basename

이 파일의 기본 이름입니다. 디렉터리 내부에 있는 파일의 이름입니다.

dirname

string File.dirname

이 파일이 포함된 디렉터리의 이름입니다. path에서 가져오며 항상 실행 디렉터리를 기준으로 합니다.

확장 프로그램

string File.extension

가장 오른쪽 마침표 뒤에 오는 파일 (파일명 제외)의 파일 확장자입니다. 파일의 기본 이름에 마침표가 없는 경우 문자열이 비어 있습니다.

디렉터리

bool File.is_directory

디렉터리인 경우 true를 반환합니다.

소스_소스

bool File.is_source

소스 파일인 경우 생성되지 않은 경우 true를 반환합니다.

소유자

Label File.owner

이 파일을 생성하는 타겟의 라벨. None가 반환될 수 있습니다.

경로

string File.path

작업공간의 실행 디렉터리를 기준으로 한 이 파일의 실행 경로입니다. 이 모듈은 두 부분으로 구성되는데, 한 부분은 선택사항인 루트 (루트 모듈 참고)와 두 번째 부분인 short_path입니다. 루트는 비어 있을 수 있습니다. 이는 일반적으로 생성되지 않은 파일에 사용됩니다. 생성된 파일의 경우 일반적으로 해당 파일을 빌드하는 동안 사용된 타겟 CPU 아키텍처 등을 인코딩하는 구성별 경로 프래그먼트를 포함합니다. 파일이 바이너리의 실행 파일에 있을 경우 파일이 매핑되는 경로에 short_path를 사용합니다.

root

root File.root

이 파일이 있는 루트입니다.

단축_경로

string File.short_path

루트를 기준으로 한 이 파일의 경로입니다. 앞서 언급한 루트(경로의 구성별 프래그먼트)는 제외됩니다. 파일이 바이너리의 실행 파일에 있는 경우 파일이 매핑되는 경로입니다.

트리 상대 경로

string File.tree_relative_path

상위 항목의 is_directory 필드가 true인 경우 상위 트리의 루트를 기준으로 한 파일 경로입니다. tree_relative_path은 작업 명령어(예: Args.add_all())에서 디렉터리의 확장된 파일에만 사용할 수 있습니다. 다른 유형의 파일에서는 이 필드에 액세스하는 것이 오류입니다.