डिफ़ॉल्ट रूप से, du
प्रत्येक फ़ाइल को केवल एक बार गिना जाएगा यदि यह कई बार से जुड़ा हुआ है। यदि आप du -L bar
इसे चलाते हैं, तो यह फ़ाइल की गणना करेगा क्योंकि यह केवल एक बार ही पहुंचता है। हालाँकि, यदि आप du -L *
इसे चलाते हैं तो इसे पहली बार देखने पर ही इसे गिनेंगे। उदाहरण के लिए:
$ du -L foo bar
16K foo
4.0K bar
$ du -L bar foo
16K bar
4.0K foo
ध्यान दें कि तर्कों के क्रम को बदलने से कौन सा फ़ोल्डर 16K के रूप में रिपोर्ट किया जाता है।
आप पैरामीटर du
को पास करके फ़ाइल को दो बार गिनने के लिए बाध्य कर सकते हैं -l
।
संपादित करें:
प्रतीकात्मक लिंक एक विशेष प्रकार की फ़ाइल है, और लिंक का पालन करने के लिए एक अतिरिक्त कदम की आवश्यकता होती है। du
जब तक -L
विकल्प सक्षम न हो, प्रतीकात्मक लिंक का पालन नहीं करेगा ।
दूसरी ओर एक कड़ी, मूल रूप से दो (या अधिक) फ़ोल्डरों में मौजूद एक फ़ाइल है। du
मुमकिन है कि इन दो बार की गिनती से बचने के लिए इनकोड नंबर द्वारा कौन सी फाइलें देखी हैं। -l
इस व्यवहार को अक्षम करता है।
तो, बस के साथ -L
, यह प्रतीकात्मक लिंक का पालन करेगा, लेकिन अगर लक्ष्य फ़ाइल में एक इनोड नंबर है, तो यह पहले ही देख चुका है कि इसे फिर से गिना नहीं जाएगा। बस -l
यह डुप्लिकेट हार्ड लिंक की गिनती करेगा, लेकिन प्रतीकात्मक लिंक का पालन नहीं करेगा।
यदि आप उपयोग करते हैं -l
और -L
एक साथ, यह दोनों प्रतीकात्मक लिंक का पालन करेगा, और लक्ष्य फ़ाइल (नों) को एक से अधिक बार गिनने की भी अनुमति देगा।
du
कि यहां चतुर खेलना चाहता है, लेकिन अगर आपdf -a -L bar foo
आउटपुट चलाते हैं तो बहुत गलत है (16K को बार में छोड़ना फू को खाली छोड़ना)।