मेटाडेटा डेटा के बारे में डेटा है। स्पष्ट आकार डेटा का आकार है जो कंप्यूटर के सामान्य उपयोगकर्ता के लिए मायने रखता है। उपयोगकर्ता के अक्षरों, छवियों, वीडियो आदि की सामग्री (पाठ) स्पष्ट आकार का गठन करती है। यह डेटा मनमाने ढंग से कंप्यूटर में नहीं रखा जाता है। स्पष्ट आकार के डेटा को नियंत्रण में रखा जाना चाहिए। यह पहचानने योग्य होना चाहिए। यह पूरा होना चाहिए। इसके लिए अन्य आवश्यकताएं हैं। इन अतिरिक्त आवश्यकताओं को प्राप्त करने के लिए कुछ अतिरिक्त डेटा की आवश्यकता होती है, और यह अतिरिक्त डेटा मेटा-डेटा है।
याद रखें, वॉल्यूम में केवल एक निर्देशिका होती है। बाकी सब-डायरेक्टरी हैं। मूल निर्देशिका उप-निर्देशिकाओं को जन्म देती है, जो अन्य उप-निर्देशिकाओं के नीचे जाने को जन्म देती है। हालाँकि, उप-निर्देशिकाओं को आमतौर पर केवल निर्देशिका कहा जाता है। और इसलिए, केवल एक निर्देशिका ट्री है।
इसलिए, निर्देशिका का आकार प्राप्त करने के लिए ls -s उपयोगी नहीं है। तब कौन सा आदेश उपयोगी है? - ड्यू कमांड। du,डिस्क उपयोग के लिए खड़ा है। यह निर्देशिका के डिस्क उपयोग को प्रिंट करता है।
यह आलेख लिनक्स में डु कमांड की विभिन्न विशेषताओं की व्याख्या करता है, जो निर्देशिकाओं के आकार और उनकी उप-निर्देशिकाओं को जानने के लिए विभिन्न प्रोग्रामर तरीके प्रदान करता है। बैश इस आलेख के कोड नमूने के लिए उपयोग किया जाने वाला खोल है।
लेख सामग्री
- डु विकल्प या तर्क के बिना
- अन्य निर्देशिकाओं का आकार
- स्पष्ट-आकार
- सुडो कमांड
- आकार के अनुसार प्रविष्टियों को छोड़कर
- बहिष्कृत करें = पैटर्न
- निष्कर्ष
डु विकल्प या तर्क के बिना
वर्तमान कार्यशील निर्देशिका वह निर्देशिका है जिसमें उपयोगकर्ता वर्तमान में काम कर रहा है। संकेत सामान्य रूप से वर्तमान कार्यशील निर्देशिका दिखाता है। बिना किसी विकल्प और तर्क के DU टाइप करना, जैसे:
का
और फिर एंटर कुंजी दबाने से वर्तमान कार्यशील निर्देशिका की सभी उप-निर्देशिकाओं के लिए डिस्क उपयोग प्रदर्शित होगा। यह इस जानकारी को वर्तमान कार्यशील निर्देशिका के उप-वृक्ष के लिए प्रदर्शित करेगा। प्रदर्शन पर एक बिंदु वर्तमान कार्यशील निर्देशिका का प्रतिनिधित्व करता है।
उप-वृक्ष के प्रत्येक पथ को डिस्प्ले पर एक पंक्ति में दर्शाया गया है। प्रत्येक पंक्ति निर्देशिका के आकार से शुरू होती है (जो पथ में अंतिम नाम है)। डिस्प्ले कुछ इस तरह हो सकता है:
8./डीआईआर1/dir2/डीआईआर3/डीआईआर412./डीआईआर1/dir2/डीआईआर3
16./डीआईआर1/dir2
बीस./डीआईआर1
ध्यान दें कि यह स्पष्ट नहीं है कि आकार बाइट्स या किलोबाइट्स या मेगाबाइट्स या गीगाबाइट्स में है या नहीं। प्रतीक के किलोबाइट, K का अर्थ है 1024 बाइट्स; मेगाबाइट्स ऑफ़ सिंबल, M का अर्थ है 1,048,576 बाइट्स; प्रतीक के गीगाबाइट, G का अर्थ है 1,073,741,824 बाइट्स। गुणकों को इंगित करने के लिए, -h विकल्प (स्विच) का उपयोग निम्नानुसार किया जाना चाहिए:
का -एचतब प्रदर्शन इस तरह दिखेगा:
8.0K।/डीआईआर1/dir2/डीआईआर3/डीआईआर4१२के./डीआईआर1/dir2/डीआईआर3
१६के./डीआईआर1/dir2
20K।/डीआईआर1
जब -h विकल्प का उपयोग किया जाता है, तो आकार को पठनीय रूप में कहा जाता है।
नोट: -ऑल विकल्प के साथ, डु कमांड फाइलों के लिए डिस्क उपयोग भी देगा; हालाँकि, फ़ाइलों के लिए डिस्क उपयोग को इस आलेख में संबोधित नहीं किया जाएगा।
अन्य निर्देशिकाओं का आकार
लिनक्स वॉल्यूम के लिए एक विशिष्ट निरपेक्ष पथ इस प्रकार है:
/घर/जॉन/कहो/dirTwo/दिरतीन/डीआईआरफोरपहला / रूट डायरेक्टरी है। इस निर्देशिका में तत्काल उप-निर्देशिकाएँ हैं, जिनमें होम निर्देशिका भी शामिल है। होम निर्देशिका में उपयोगकर्ता की निर्देशिका होती है। यदि उपयोगकर्ता का नाम जॉन है, तो वह उपयोगकर्ता की निर्देशिका का नाम जॉन कर सकता है। उपयोगकर्ता की निर्देशिका की पहचान ~ द्वारा की जाती है। तो, उपयोगकर्ता किसी भी निर्देशिका से अपनी निर्देशिका तक पहुंचने के लिए cd ~ कमांड का उपयोग कर सकता है। dirOne उपयोगकर्ता द्वारा बनाई गई निर्देशिका है। उपयोगकर्ता इस स्तर पर अन्य निर्देशिकाएँ भी बना सकता है। dirTwo, dirThree और dirFour उपयोगकर्ता द्वारा बनाई गई उनकी पिछली निर्देशिकाओं की उप-निर्देशिकाएँ हैं।
उपयोगकर्ता किसी भी निर्देशिका से किसी भी अन्य निर्देशिका और उसके उपनिर्देशिका (उप-पेड़) के आकार को एक तर्क के रूप में पूर्ण पथ को छोड़कर, जान सकता है। उदाहरण के लिए, यदि डिस्क उपयोग की आवश्यकता है,
/घर/जॉन/कहो/dirTwoतो आदेश होगा:
का -एच /घर/जॉन/कहो/dirTwoया
का -एच~/कहो/dirTwoजहां ~ उपयोगकर्ता की निर्देशिका का प्रतिनिधित्व करता है।
एक सापेक्ष पथ का उपयोग करने के लिए, उपयोगकर्ता को पहले से ही संबंधित मूल निर्देशिका में होना चाहिए। उदाहरण के लिए, यदि संकेत दिखा रहा है,
जॉन@मेजबान:~/$ . कहोजिसका अर्थ है कि उपयोगकर्ता निर्देशिका में है, /home/john/dirOne, तो निम्न आदेश उपरोक्त आदेश के समान परिणाम देगा:
का -एचdirTwoरास्ते अभी भी सापेक्ष होंगे। वर्तमान निर्देशिका के लिए समान जानकारी प्रदर्शित करने के लिए, बिना तर्क के उपयोग करें, या बिंदु का उपयोग करें।
इस योजना का उपयोग केवल एक निर्देशिका का आकार प्राप्त करने के लिए किया जा सकता है, पथ में अंतिम (पथ से पहले)। पथ के बीच में निर्देशिका का आकार प्राप्त करना संभव है - नीचे बहिष्कृत = पैटर्न देखें।
कुल योग
इसमें शामिल सभी निर्देशिकाओं का एक बड़ा कुल आकार तैयार किया जा सकता है। उपरोक्त स्थिति के लिए, आदेश होगा:
का -एच --कुलस्पष्ट-आकार
स्पष्ट आकार आमतौर पर डिस्क उपयोग से छोटा होता है। हालाँकि, कुछ स्थितियों में, स्पष्ट आकार डिस्क उपयोग से बड़ा होता है; कारण - बाद में देखें। उपरोक्त सापेक्ष पथ के लिए स्पष्ट आकार प्राप्त करने का आदेश होगा:
का -एच --स्पष्ट-आकारdirTwoअधिकतम-गहराई
-मैक्स-डेप्थ = 0 के साथ, डु केवल वर्तमान कार्यशील निर्देशिका के आकार को प्रिंट करता है; डु-मैक्स-डेप्थ = 1 के साथ, डु वर्तमान कार्यशील निर्देशिका के आकार और इसके सभी प्रथम स्तर की उप-निर्देशिकाओं के आकार को प्रिंट करता है; -मैक्स-डेप्थ = 2 के साथ, डु वर्तमान कार्यशील निर्देशिका के आकार और इसके सभी प्रथम स्तर की उप-निर्देशिकाओं और इसके सभी दूसरे स्तर की उप-निर्देशिकाओं के आकार को प्रिंट करता है; -मैक्स-डेप्थ = 3 के साथ, डु वर्तमान वर्किंग डायरेक्टरी के आकार और इसके सभी प्रथम स्तर की उप-निर्देशिकाओं, और इसके सभी दूसरे स्तर की उप-निर्देशिकाओं और इसके सभी तीसरे स्तर की उप-निर्देशिकाओं को प्रिंट करता है; यह अधिकतम-गहराई के बढ़ते मूल्य के साथ जारी है। इसके उपयोग का एक उदाहरण है:
का -एच --अधिकतम गहराई=2सुडो कमांड
मूल निर्देशिका में अपनी उप-निर्देशिकाओं वाली निर्देशिकाओं में से एक var है। यदि उपयोगकर्ता टाइप करता है
का -एच /कहांऔर एंटर दबाता है, वह महसूस करेगा कि कुछ निर्देशिकाओं के लिए अनुमति अस्वीकार कर दी गई है। यानी वह कुछ निर्देशिकाओं के आकार नहीं जान सकता। अनुमति अस्वीकार कर दी गई है क्योंकि उपयोगकर्ता सुपरयुसर नहीं है। सुपरयुसर को उन निर्देशिकाओं के आकार (डिस्क उपयोग) को देखने का विशेषाधिकार है। इसलिए, उपयोगकर्ता को उस विशेषाधिकार को प्राप्त करने के लिए, उसे sudo कमांड का उपयोग निम्नानुसार करना होगा:
सुडो का -एच /कहांयदि शेल उपयोगकर्ता से उसका पासवर्ड मांगता है, तो उपयोगकर्ता को पासवर्ड टाइप करना होगा और एंटर दबाना होगा। सुडो कमांड के साथ, सामान्य उपयोगकर्ता (प्रोग्रामर) var निर्देशिका और समान निर्देशिकाओं में सभी निर्देशिकाओं के आकार देख सकता है।
आकार के अनुसार प्रविष्टियों को छोड़कर
– दहलीज=SIZE विकल्प उन निर्देशिकाओं को सूचीबद्ध करने की अनुमति नहीं देगा जिनका आकार SIZE से कम है। पथ के लिए,
/घर/जॉन/कहो/dirTwo/दिरतीन/डीआईआरफोरशीघ्र के साथ[ईमेल संरक्षित]:~$, तब
का -एच --सीमा=12के डायरओनेजहां 12K का अर्थ है 12 किलोबाइट, किसी भी निर्देशिका के लिए लाइन प्रदर्शित नहीं करेगा जिसका डिस्क उपयोग 12K से कम है।
-बहिष्कृत = पैटर्न
यह विकल्प और मान निर्देशिका लाइनों को छोड़ सकते हैं जो उपयोगकर्ता लिस्टिंग में नहीं चाहता है।
अंतिम निर्देशिका के लिए लाइन को छोड़ने के लिए, पथ के dirFour
/घर/जॉन/कहो/dirTwo/दिरतीन/डीआईआरफोरआदेश होना चाहिए:
का -एच --निकालना= कहो/dirTwo/दिरतीन/dirFour dirOneपरिणाम कुछ ऐसा होगा,
4.0K डायरवन/dirTwo/दिरतीन८.० के डाइरोन/dirTwo
१२के डाइरोन
नोट: आकार में पथ के अंतिम स्तर निर्देशिका (dirFour) का आकार शामिल नहीं है।
केवल ऊपरी गहराई निर्देशिकाओं और उनके उप-पेड़ों के आकार के लिए, विकल्प में निचली गहराई निर्देशिकाएं नहीं हैं। तो आदेश के साथ,
का -एच --निकालना= कहो/dirTwo/dirThree dirOneआउटपुट कुछ ऐसा होगा,
4.0K डायरवन/dirTwo
८के डाइरोन
नोट: आकार ने पेड़ के निचले लीवर निर्देशिकाओं के आकार को बाहर कर दिया है।
फिर से विचार करें, पूर्ण लिंक,
/घर/जॉन/कहो/dirTwo/दिरतीन/डीआईआरफोरनिम्न आदेश केवल dirTwo निर्देशिका का डिस्क उपयोग प्राप्त करेगा, जो पथ के भीतर एक निर्देशिका है। आदेश है:
का -एच --निकालना=/घर/जॉन/कहो/dirTwo/ * /घर/जॉन/कहो/dirTwoतर्क में सभी पूर्ववर्ती निर्देशिकाओं को प्रश्न में नीचे रखा गया है। बहिष्करण के मूल्य में सभी पूर्ववर्ती निर्देशिकाएं हैं, जो प्रश्न में एक के ठीक बाद * के साथ समाप्त होती हैं। * का अर्थ है उस स्तर पर सभी उप-निर्देशिकाएं (और उनके उप-पेड़)। परिणाम कुछ ऐसा होगा,
5.0K/घर/जॉन/कहो/dirTwoनिष्कर्ष
ls -s कमांड वाली निर्देशिका के आकार को जानने की कोशिश करना भ्रामक है। इससे केवल डायरेक्टरी का मेटा-डेटा प्राप्त होता है। किसी निर्देशिका के डिस्क उपयोग को जानने के लिए, du कमांड का उपयोग किया जाना चाहिए। जब -h विकल्प के साथ प्रयोग किया जाता है, तो निर्देशिकाओं के आकार पठनीय होते हैं। स्पष्ट आकार विकल्प का उपयोग करके स्पष्ट आकार प्राप्त किया जा सकता है। किसी भी विकल्प और तर्क के बिना, डु कमांड वर्तमान निर्देशिका के सभी उपनिर्देशिकाओं के आकार को प्रदर्शित करता है, जिसमें वर्तमान निर्देशिका भी शामिल है। दू का तर्क वह मार्ग है, जो मूल से शुरू हो सकता है। विकल्प और उनके कुछ मूल्य तय करते हैं कि कौन सी निर्देशिकाओं को संबोधित किया जाता है। सुडो कमांड डिफ़ॉल्ट रूप से सामान्य उपयोगकर्ता सुपरयुसर विशेषाधिकार देता है।