सबसे पहले, सोचें: एक निर्देशिका क्या है? यह केवल आइटम (फ़ाइलों और अन्य निर्देशिकाओं) की एक सूची है जो भीतर रहते हैं। इसलिए: निर्देशिका = नामों की सूची।
बिट पढ़ें = यदि सेट किया गया है, तो आप इस सूची को पढ़ सकते हैं। इसलिए, उदाहरण के लिए, यदि आपके पास एक निर्देशिका है जिसका नाम है poems
:
- आप कर सकते हैं
ls poems
और आप भीतर रहने वाले आइटमों की एक सूची प्राप्त करेंगे ( -l
किसी भी विवरण को प्रकट नहीं करेंगे!)।
- आप कमांड-लाइन पूरा करने का उपयोग कर सकते हैं
touch poems/so <TAB> poems/somefile
।
- आप
poems
अपनी कार्यशील निर्देशिका (यानी cd
इसमें) नहीं बना सकते ।
बिट लिखें = यदि सेट किया गया है, तो आप इस सूची को संशोधित कर सकते हैं अर्थात आप इस पर {जोड़, नाम बदल सकते हैं, हटा सकते हैं] नाम। परंतु! आप वास्तव में यह केवल तभी कर सकते हैं जब निष्पादित बिट भी सेट हो।
Execute bit = इस डायरेक्टरी को अपनी वर्किंग डाइरेक्टरी यानी cd
इसमें बनाएं । यदि आप चाहते हैं तो आपको इसकी अनुमति चाहिए:
- पहुँच (पढ़ने, लिखने, निष्पादित) के भीतर रहने वाले आइटम।
- सूची को स्वयं संशोधित करें (जोड़ें, नाम बदलें, इस पर नाम हटाएं (निश्चित रूप से राइट बिट को निर्देशिका पर सेट किया जाना चाहिए)।
दिलचस्प मामला 1 : यदि आपके पास एक निर्देशिका पर अनुमतियों को लिखने + निष्पादित करने के लिए है, तो आप उन वस्तुओं पर परिशोधन को नहीं लिख सकते हैं, भले ही आपके भीतर रहने वाले आइटम हटाएं, हटाएं। (इसे रोकने के लिए चिपचिपा सा प्रयोग करें)
दिलचस्प मामला 2 : यदि आपने निर्देशिका पर अनुमति (लेकिन नहीं लिखी है) की अनुमति दी है और आपके पास रहने वाली फ़ाइल पर अनुमति है, तो आप फ़ाइल को हटा नहीं सकते हैं (क्योंकि इसमें सूची से इसे हटाना शामिल है)। हालाँकि, आप इसकी सामग्री मिटा सकते हैं जैसे यदि यह एक पाठ फ़ाइल है तो आप इसे खोलने और सब कुछ हटाने के लिए vi का उपयोग कर सकते हैं। फ़ाइल अभी भी वहाँ होगी, लेकिन यह खाली होगी।
सारांश:
बिट पढ़ें = आप सूची में नाम पढ़ सकते हैं।
बिट लिखें = आप सूची में नाम जोड़ सकते हैं, नाम जोड़ सकते हैं, नाम बदल सकते हैं, निष्पादन बिट सेट कर सकते हैं।
Execute bit = आप इस निर्देशिका को अपनी कार्यशील निर्देशिका बना सकते हैं।
पुनश्च: कुसलानंद द्वारा उल्लिखित लेख एक अच्छा पढ़ा गया है।