ไฟล์
จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน
บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ
ออบเจ็กต์นี้สร้างขึ้นในระยะการวิเคราะห์เพื่อแสดงไฟล์หรือไดเรกทอรีที่จะอ่านหรือเขียนในระยะการดำเนินการ ไม่ใช่แฮนเดิลไฟล์ที่เปิดอยู่ และใช้เพื่ออ่านหรือเขียนเนื้อหาไฟล์โดยตรงไม่ได้ แต่คุณจะใช้เพื่อสร้างกราฟการดำเนินการในฟังก์ชันการใช้งานกฎโดยส่งไปยังฟังก์ชันการสร้างการดำเนินการ ดูข้อมูลเพิ่มเติมได้ที่
หน้ากฎเมื่อส่ง File
ไปยังออบเจ็กต์ Args
โดยไม่ได้ใช้ฟังก์ชัน map_each
ระบบจะแปลงเป็นสตริงโดยใช้ค่าของฟิลด์ path
สมาชิก
basename
string File.basename
ชื่อฐานของไฟล์นี้ นี่คือชื่อของไฟล์ภายในไดเรกทอรี
dirname
string File.dirname
ชื่อของไดเรกทอรีที่มีไฟล์นี้ โดยจะนำมาจาก
path และจะสัมพันธ์กับไดเรกทอรีการดำเนินการเสมอ
ส่วนขยาย
string File.extension
นามสกุลไฟล์นี้ โดยตามหลัง (ไม่รวม) จุดขวาสุด สตริงว่างหากชื่อพื้นฐานของไฟล์ไม่มีจุด
is_directory
bool File.is_directory
แสดงค่าจริงหากเป็นไดเรกทอรี ซึ่งจะแสดงประเภทของไฟล์ที่ประกาศ (เช่น ctx.actions.declare_directory) ไม่ใช่ประเภทของไฟล์ในระบบไฟล์ ซึ่งอาจแตกต่างกัน
is_source
bool File.is_source
แสดงค่าเป็นจริงหากเป็นไฟล์ต้นฉบับ ซึ่งหมายความว่าไม่ได้สร้างขึ้น
is_symlink
bool File.is_symlink
แสดงค่าเป็นจริงหากมีการประกาศเป็นลิงก์สัญลักษณ์ ซึ่งจะแสดงประเภทของไฟล์ที่ประกาศ (เช่น ctx.actions.declare_symlink) ไม่ใช่ประเภทของไฟล์ในระบบไฟล์ ซึ่งอาจแตกต่างกัน
เจ้าของ
Label File.owner
ป้ายกำกับของเป้าหมายที่สร้างไฟล์นี้
อาจส่งคืน
None
เส้นทาง
string File.path
เส้นทางการดำเนินการของไฟล์นี้ ซึ่งสัมพันธ์กับไดเรกทอรีการดำเนินการของพื้นที่ทำงาน โดยประกอบด้วย 2 ส่วน ได้แก่ ส่วนแรกที่ไม่บังคับซึ่งเรียกว่า
รูท (ดูโมดูล
รูทด้วย) และส่วนที่ 2 ซึ่งคือ
short_path
รูทอาจว่างเปล่า ซึ่งมักจะเป็นเช่นนั้นสำหรับไฟล์ที่ไม่ได้สร้างขึ้น สำหรับไฟล์ที่สร้างขึ้น โดยปกติแล้วจะมีส่วนย่อยของเส้นทางที่เฉพาะเจาะจงการกำหนดค่าซึ่งเข้ารหัสสิ่งต่างๆ เช่น สถาปัตยกรรม CPU เป้าหมายที่ใช้ขณะสร้างไฟล์ดังกล่าว ใช้
short_path
สำหรับเส้นทางที่แมปไฟล์ไว้หากอยู่ในไฟล์ที่เรียกใช้ของไบนารี
รูท
root File.root
รูทที่ไฟล์นี้อยู่
short_path
string File.short_path
เส้นทางของไฟล์นี้ที่สัมพันธ์กับรูท ซึ่งไม่รวม
root ที่กล่าวถึงข้างต้น นั่นคือส่วนย่อยของเส้นทางที่เฉพาะเจาะจงการกำหนดค่า นอกจากนี้ยังเป็นเส้นทางที่ระบบจะแมปไฟล์หากไฟล์อยู่ในไฟล์ที่เรียกใช้ของไบนารี
tree_relative_path
string File.tree_relative_path
เส้นทางของไฟล์นี้เทียบกับรูทของแผนผังของบรรพบุรุษ หากฟิลด์
is_directory ของบรรพบุรุษเป็นจริง
tree_relative_path
ใช้ได้เฉพาะกับไฟล์ที่ขยายของไดเรกทอรีในคำสั่งการดำเนินการ เช่น
Args.add_all() สำหรับไฟล์ประเภทอื่นๆ การเข้าถึงฟิลด์นี้จะทำให้เกิดข้อผิดพลาด