อันดับแรกคิดว่า: ไดเรกทอรีคืออะไร? มันเป็นเพียงรายการของรายการ (ไฟล์และไดเรกทอรีอื่น ๆ ) ที่อยู่ภายใน ดังนั้น: directory = รายชื่อ
อ่านบิต = หากตั้งไว้คุณสามารถอ่านรายการนี้ ตัวอย่างเช่นหากคุณมีชื่อไดเรกทอรีpoems
:
- คุณสามารถ
ls poems
และคุณจะได้รับรายชื่อของรายการที่อาศัยอยู่ภายใน ( -l
จะไม่เปิดเผยรายละเอียดใด ๆ !)
touch poems/so <TAB> poems/somefile
คุณสามารถใช้บรรทัดคำสั่งเสร็จสิ้นเช่น
- คุณไม่สามารถสร้าง
poems
ไดเรกทอรีทำงานของคุณได้ (เช่นทำcd
ไว้)
เขียนบิต = ถ้าตั้งค่าคุณสามารถแก้ไขรายการนี้ได้เช่นคุณสามารถ {เพิ่มเปลี่ยนชื่อลบ} ชื่อได้ แต่! คุณสามารถทำได้จริง ๆ ก็ต่อเมื่อบิตรันไทม์ถูกตั้งค่าไว้ด้วย
ดำเนินการบิต = ทำให้ไดเรกทอรีนี้ไดเรกทอรีการทำงานของคุณคือcd
เป็นมัน คุณต้องได้รับอนุญาตหากคุณต้องการ:
- เข้าถึง (อ่านเขียนดำเนินการ) รายการที่อยู่ภายใน
- แก้ไขรายการเองเช่นเพิ่มเปลี่ยนชื่อลบชื่อ (แน่นอนต้องเขียนบิตในไดเรกทอรี)
กรณีที่น่าสนใจ 1 : หากคุณมีสิทธิ์เขียน + ดำเนินการในไดเรกทอรีคุณสามารถ {ลบเปลี่ยนชื่อ} รายการที่อยู่ในแม้ว่าคุณจะไม่ได้รับการเขียนในรายการเหล่านั้น (ใช้เหนียวเล็กน้อยเพื่อป้องกันสิ่งนี้)
กรณีที่น่าสนใจ 2 : หากคุณได้รับอนุญาตให้ดำเนินการ (แต่ไม่ได้เขียน) ในไดเรกทอรีและคุณมีสิทธิ์ในการเขียนในไฟล์ที่อยู่ภายในคุณจะไม่สามารถลบไฟล์ได้ (เพราะเกี่ยวข้องกับการลบออกจากรายการ) อย่างไรก็ตามคุณสามารถลบเนื้อหาเช่นถ้าเป็นไฟล์ข้อความคุณสามารถใช้ vi เพื่อเปิดและลบทุกอย่าง ไฟล์จะยังคงอยู่ แต่จะว่างเปล่า
สรุป:
อ่านบิต = คุณสามารถอ่านชื่อในรายการ
เขียนบิต = คุณสามารถ {เพิ่มเปลี่ยนชื่อลบ} ชื่อในรายการถ้าบิตเรียกใช้ถูกตั้งค่าไว้ด้วย
ดำเนินการบิต = คุณสามารถทำให้ไดเรกทอรีนี้เป็นไดเรกทอรีทำงานของคุณได้
PS: บทความที่กล่าวถึงโดย Kusalananda เป็นการอ่านที่ดี