सवाल बैश: 1 लाइन कमांड का उपयोग कर सूची प्रारूप में प्रत्येक उप-निर्देशिका आकार प्रदर्शित करें?


मैं निर्देशिका प्रारूपों और उनके आकारों की एक सूची प्रारूप में एक सूची प्राप्त करना चाहता हूं जैसे कि आप कब करते हैं ls -l

बात यह है कि क्या एक लाइन कमांड है जो यह कर सकता है? मैं दूसरों को यह आउटपुट करने के लिए लंबे आदेशों को देखता हूं। यह बहुत लंबा है।

यह आदेश क्या कर सकता है या कमांड का संयोजन जिसे आसानी से टाइप किया जा सकता है? du -h यह देता है, लेकिन यह सभी उप-फ़ोल्डरों को प्रदर्शित करता है जो मैं नहीं चाहता हूं। बस वर्तमान निर्देशिका फ़ोल्डर्स।


88
2018-02-19 15:34


मूल




जवाब:


आप शायद आकार के अनुसार आदेश निर्देशिका देखना चाहते हैं:

$ du -hs * | sort -hr

856M    lib
746M    share
612M    lib64
312M    src
267M    java
239M    bin
179M    sbin
173M    local
93M     i686-w64-mingw32
72M     libexec
26M     include
20M     puppet
772K    X11R6
20K     man
4.0K    games
4.0K    etc
0       tmp

47
2018-06-17 23:04





इसे इस्तेमाल करे

du -h --max-depth=1

उत्पादन

oliver@home:/usr$ sudo du -h --max-depth=1
24M     ./include
20M     ./sbin
228M    ./local
4.0K    ./src
520M    ./lib
8.0K    ./games
1.3G    ./share
255M    ./bin
2.4G    .

विकल्प

अगर --max-depth=1 आपके स्वाद के लिए थोड़ा लंबा है, आप इसका उपयोग करने का भी प्रयास कर सकते हैं:

du -h -s *

यह उपयोग करता है -s (--summarize) और डिफ़ॉल्ट रूप से फ़ोल्डर के आकार को ही मुद्रित करेगा। वर्तमान कार्य निर्देशिका में सभी तत्वों को पारित करके (*), यह समान उत्पादन के रूप में उत्पादन करता है --max-depth=1 होगा:

उत्पादन

oliver@cloud:/usr$ sudo du -h -s *
255M    bin
8.0K    games
24M     include
520M    lib
0       lib64
228M    local
20M     sbin
1.3G    share
4.0K    src

अंतर सूक्ष्म है। पूर्व दृष्टिकोण वर्तमान कार्यशील निर्देशिका का कुल आकार और इसमें मौजूद सभी फ़ोल्डरों का कुल आकार प्रदर्शित करेगा ... लेकिन केवल 1 की गहराई तक।

उत्तरार्द्ध दृष्टिकोण सभी उत्तीर्ण वस्तुओं के कुल आकार की गणना करेगा व्यक्तिगत रूप से। इस प्रकार, इसमें सिम्लिंक शामिल है lib64 आउटपुट में, लेकिन छिपा वस्तुओं को छोड़ दिया जाता है (जिसका नाम डॉट से शुरू होता है)। वर्तमान कार्यशील निर्देशिका के लिए कुल आकार की भी कमी है, क्योंकि इसे तर्क के रूप में पारित नहीं किया गया था।


116
2018-02-19 15:36



सही जवाब मैक ओएसएक्स पर --depth पैरामीटर पहचाना नहीं गया है। उपयोग du -h -d 1 एक ही परिणाम के लिए। - Dylan


डिस्क पर सभी फाइल फ़ोल्डर्स और छिपी हुई फाइलों के आकार प्रिंट करें:

el@dev /home/el $ du -sh `ls -a`
258M    .
265M    ..
4.0K    .classpath
258M    .git
4.0K    .gitignore
9.0K    nbactions.xml
12K     README
20K     .README.swp
4.0K    run.sh
23K    XmlPostPropagate.php

6
2017-11-06 14:52



मगर सावधान! आपको एलएस (1) के आउटपुट का विश्लेषण क्यों नहीं करना चाहिए - Kamil Maciorowski


उल्लेख करने के लायक है NCurses डिस्क उपयोग खोल कमांड

एनसीडीयू एक एनसीआरएस इंटरफेस के साथ एक डिस्क उपयोग विश्लेषक है। यह है   रिमोट सर्वर पर स्पेस होग्स खोजने के लिए डिज़ाइन किया गया है जहां आपके पास नहीं है   संपूर्ण ग्राफिकल सेटअप उपलब्ध है, लेकिन यह भी एक उपयोगी उपकरण है   नियमित डेस्कटॉप सिस्टम। एनसीडीयू का लक्ष्य तेजी से, सरल और उपयोग करने में आसान होना है,   और किसी भी न्यूनतम POSIX- जैसे वातावरण में चलाने में सक्षम होना चाहिए   ncurses स्थापित।


1
2018-06-12 12:29