निर्देशिकाओं और उनके कुल आकारों को सूचीबद्ध करने के लिए ls का उपयोग करना


826

क्या lsयूनिक्स में उपयोग करने के लिए एक उप-निर्देशिका के कुल आकार और उसकी सभी सामग्रियों को सामान्य रूप से विरोध करने के लिए सूचीबद्ध करना संभव है 4Kजो (मुझे लगता है) सिर्फ निर्देशिका फ़ाइल है?

total 12K
drwxrwxr-x  6 *** *** 4.0K 2009-06-19 10:10 branches
drwxrwxr-x 13 *** *** 4.0K 2009-06-19 10:52 tags
drwxrwxr-x 16 *** *** 4.0K 2009-06-19 10:02 trunk

आदमी पृष्ठों को दस्त करने के बाद मैं खाली आ रहा हूं।


4
आप इसके बजाय डु का उपयोग करना चाहते हैं
बंदूकें

21
बतख की तलाश में:alias ducks='du -cksh * | sort -hr | head -n 15'
सेबी

जवाबों:


1548

कुछ इस तरह का प्रयास करें:

du -sh *

का संक्षिप्त संस्करण:

du --summarize --human-readable *

स्पष्टीकरण:

du: डी इसक यू ऋषि

-s: प्रत्येक निर्दिष्ट फ़ाइल के लिए एक सारांश प्रदर्शित करें। (समतुल्य -d 0)

-h: "मानव-पठनीय" आउटपुट। यूनिट प्रत्यय का उपयोग करें: बी yte, K ibibyte (KiB), M Ebibyte (MiB), G ibibyte (GiB), T ebibyte (TiB) और P ebibyte (PiB)। (BASE2)


55
इसके अलावा -c (एक भव्य कुल उत्पादन) अच्छा है।
मेरिडियस

50
डु --मैक्स-डेप्थ 1 केवल पेड़ में 1 डीप की फाइल / फोल्डर साइज दिखाता है, फोल्डर के भीतर बड़े फोल्डर को खोजने के लिए अधिक अव्यवस्था और आसान नहीं है।
कज़िन कोकीन

12
छिपी हुई फ़ाइलों को भी कैसे शामिल करें?
जकारिया ब्रेक्सा

5
ZZ में @Zak आप सामान्य फाइलों के साथ-साथ *(D)छिपी ( डी ओटी) फाइलों का मिलान करने के लिए उपयोग कर सकते हैं । बैश का उपयोग करते समय, आप * .[!.]*दोनों का मिलान करने के लिए उपयोग कर सकते हैं ।
सेबी

22
जहाँ अंतरिक्ष जाता है, की एक स्पष्ट तस्वीर पाने के लिए, du -sch * .[!.]* | sort -rhमहान है (एक सॉर्ट किए गए आउटपुट दिखाएं) मैक पर: brew install coreutilsऔर फिरdu -sch * .[!.]* | gsort -rh
गुइग

319

du -sk * | sort -nआकार के आधार पर फ़ोल्डरों को सॉर्ट करेगा। खाली जगह की तलाश में मददगार ..


11
| tail -rपहले सबसे बड़े के आधार पर छाँटने की अपील करें ।
फ्रॉगज़

68
sort -rnचीजों को उल्टे संख्यात्मक क्रम में क्रमबद्ध करें। sort -rn | head -n 10केवल शीर्ष कुछ दिखाएंगे, अगर यह किसी भी रुचि का है।
एजिलेटीलीडी

14
sort -rhअच्छी तरह से काम करेगा du -cksh *क्योंकि यह मानव-पठनीय इकाइयों को क्रमबद्ध करता है।
सेबी

@ एसबी-एच एक मैक पर सॉर्ट करने के लिए एक वैध पैरामीटर नहीं है दुर्भाग्य से
anon58192932

@ सेबी भी -c आवश्यक नहीं है, du -ksh | sort -rnजैसा है वैसा ही है du -cksh | sort -rn। जैसा du -kshहै वैसा ही है du -cksh
hello_there_andy 16

108
du -sh * | sort -h

इसे मानव पठनीय प्रारूप में प्रदर्शित किया जाएगा।


6
के बारे में अधिक sort -hयहाँ: gnu.org/software/coreutils/manual/... यह छँटाई के लिए विशेष रूप से वहाँ 103K, 102M, 1.1Gआदि यह आजकल सिस्टम का एक बहुत पर उपलब्ध होना चाहिए, लेकिन सभी नहीं।
एवगेनी सर्गेव

डुह -शम * | सॉर्ट-एन?
std''OrgnlDave

10
महान काम करता है, एक छोटे से अतिरिक्त du -sh * | sort -rh(पहले बड़े फ़ोल्डरों को सूचीबद्ध करने के लिए)
आर्टम

छिपी हुई फ़ाइलों / निर्देशिकाओं को शामिल करने के लिए; du -sh $(ls -A) | sort -h
jmd_dk

55

मानव पठनीय प्रारूप में वर्तमान निर्देशिका से सबसे बड़ी निर्देशिकाओं को सूचीबद्ध करने के लिए:

du -sh * | sort -hr

पंक्तियों की संख्या को प्रतिबंधित करने का एक बेहतर तरीका हो सकता है

du -sh * | sort -hr | head -n10

जहाँ आप -nसूचीबद्ध पंक्तियों की संख्या को सीमित करने के लिए ध्वज के प्रत्यय को बढ़ा सकते हैं

नमूना:

[~]$ du -sh * | sort -hr
48M app
11M lib
6.7M    Vendor
1.1M    composer.phar
488K    phpcs.phar
488K    phpcbf.phar
72K doc
16K nbproject
8.0K    composer.lock
4.0K    README.md

यह पढ़ने के लिए और अधिक सुविधाजनक बनाता है :)


27

इसे ls -lhप्रारूप में प्रदर्शित करने के लिए , उपयोग करें:

(du -sh ./*; ls -lh --color=no) | awk '{ if($1 == "total") {X = 1} else if (!X) {SIZES[$2] = $1} else { sub($5 "[ ]*", sprintf("%-7s ", SIZES["./" $9]), $0); print $0} }'

Awk कोड समझाया:

if($1 == "total") { // Set X when start of ls is detected
  X = 1 
} else if (!X) { // Until X is set, collect the sizes from `du`
  SIZES[$2] = $1
} else {
  // Replace the size on current current line (with alignment)
  sub($5 "[ ]*", sprintf("%-7s ", SIZES["./" $9]), $0); 
  print $0
}

नमूना उत्पादन:

drwxr-xr-x 2 root     root 4.0K    Feb 12 16:43 cgi-bin
drwxrws--- 6 root     www  20M     Feb 18 11:07 document_root
drwxr-xr-x 3 root     root 1.3M    Feb 18 00:18 icons
drwxrwsr-x 2 localusr www  8.0K    Dec 27 01:23 passwd

किसी भी तरह से इस उत्पादन को हल करने के लिए? मैक पर किसी के लिए भी यह शानदार ढंग से काम करता है यदि आप हटाते हैं--color=no
anon58192932

@ anon58192932 sort --key=5,5hपांचवें स्तंभ से 'मानव पठनीय इकाइयों' को छाँटने के लिए आप आउटपुट को पाइप कर सकते हैं
सेबी

sort: stray character in field spec: invalid field specification 5,5h'` लौटाता है । मैं वास्तव में कभी-कभी macs से नफरत करता हूँ = \
anon58192932

@ anon58192932 आप मैक से संबंधित एक प्रश्न पूछ सकते हैं, मुझे यकीन है कि कोई है जो मदद कर सकता है। इस सवाल को GNU / linux
Sebi

2
क्या इस उत्तर का उपयोग करके रंग को संरक्षित करने का कोई तरीका है?
पाब्लो कैंसेको

20

आपको जो आदेश चाहिए वह 'du -sk' du = "डिस्क उपयोग" है

डिस्क सेक्टरों के डिफॉल्ट (512-बाइट ब्लॉक) के बजाय -k फ्लैग आपको किलोबाइट्स में आउटपुट देता है।

-S झंडा केवल शीर्ष स्तर निर्देशिका (यानी, वर्तमान निर्देशिका, डिफ़ॉल्ट रूप से, या कमांड लाइन पर निर्दिष्ट निर्देशिका) में चीजों को सूचीबद्ध करेगा। यह अजीब है कि डु में इस संबंध में एलएस के विपरीत व्यवहार है। डिफ़ॉल्ट रूप से पुन: आपको प्रत्येक उप-निर्देशिका का डिस्क उपयोग देगा। इसके विपरीत, ls केवल निर्दिष्ट निर्देशिका में सूची फ़ाइलें देगा। (ls -R आपको पुनरावर्ती व्यवहार देता है।)


इसे रूट डायरेक्टरी पर ट्राई किया गया, यह अभी भी सबडायरेक्टरीज को सूचीबद्ध करने की कोशिश करता है, जिसके परिणामस्वरूप बहुत सारे संदेश हैं।
नगेव

14

इस शेल फ़ंक्शन घोषणा को अपनी शेल आरंभीकरण स्क्रिप्ट में रखें:

function duls {
    paste <( du -hs -- "$@" | cut -f1 ) <( ls -ld -- "$@" )
}

मैं यह भी कहा जाता dulsहै क्योंकि यह दोनों से उत्पादन से पता चलता duहै और ls(इसी क्रम में):

$ duls
210M    drwxr-xr-x  21 kk  staff  714 Jun 15 09:32 .

$ duls *
 36K    -rw-r--r--   1 kk  staff    35147 Jun  9 16:03 COPYING
8.0K    -rw-r--r--   1 kk  staff     6962 Jun  9 16:03 INSTALL
 28K    -rw-r--r--   1 kk  staff    24816 Jun 10 13:26 Makefile
4.0K    -rw-r--r--   1 kk  staff       75 Jun  9 16:03 Makefile.am
 24K    -rw-r--r--   1 kk  staff    24473 Jun 10 13:26 Makefile.in
4.0K    -rw-r--r--   1 kk  staff     1689 Jun  9 16:03 README
120K    -rw-r--r--   1 kk  staff   121585 Jun 10 13:26 aclocal.m4
684K    drwxr-xr-x   7 kk  staff      238 Jun 10 13:26 autom4te.cache
128K    drwxr-xr-x   8 kk  staff      272 Jun  9 16:03 build
 60K    -rw-r--r--   1 kk  staff    60083 Jun 10 13:26 config.log
 36K    -rwxr-xr-x   1 kk  staff    34716 Jun 10 13:26 config.status
264K    -rwxr-xr-x   1 kk  staff   266637 Jun 10 13:26 configure
8.0K    -rw-r--r--   1 kk  staff     4280 Jun 10 13:25 configure.ac
7.0M    drwxr-xr-x   8 kk  staff      272 Jun 10 13:26 doc
2.3M    drwxr-xr-x  28 kk  staff      952 Jun 10 13:26 examples
6.2M    -rw-r--r--   1 kk  staff  6505797 Jun 15 09:32 mrbayes-3.2.7-dev.tar.gz
 11M    drwxr-xr-x  42 kk  staff     1428 Jun 10 13:26 src

$ duls doc
7.0M    drwxr-xr-x  8 kk  staff  272 Jun 10 13:26 doc

$ duls [bM]*
 28K    -rw-r--r--  1 kk  staff  24816 Jun 10 13:26 Makefile
4.0K    -rw-r--r--  1 kk  staff     75 Jun  9 16:03 Makefile.am
 24K    -rw-r--r--  1 kk  staff  24473 Jun 10 13:26 Makefile.in
128K    drwxr-xr-x  8 kk  staff    272 Jun  9 16:03 build

स्पष्टीकरण:

pasteउपयोगिता आपके इनपुट से उस विनिर्देश के अनुसार कॉलम बनाती है जो आप इसे देते हैं। दो इनपुट फ़ाइलों को देखते हुए, यह उन्हें अलग-अलग टैब के साथ कंधे से कंधा मिलाकर रखता है।

हम इसे du -hs -- "$@" | cut -f1पहली फ़ाइल के रूप में आउटपुट देते हैं (इनपुट स्ट्रीम वास्तव में) और ls -ld -- "$@"दूसरी फ़ाइल के रूप में आउटपुट ।

फ़ंक्शन में, "$@"सभी कमांड लाइन तर्कों की सूची का मूल्यांकन करेंगे, प्रत्येक दोहरे उद्धरण में। इसलिए यह गोलाकार पात्रों और रिक्त स्थान के साथ पथ के नाम आदि को समझेगा।

डबल मिन्यूज़ ( --) कमांड लाइन विकल्पों के अंत का संकेत देता है duऔर ls। इन के बिना, कह duls -lभ्रमित हैं duऔर के लिए किसी भी विकल्प duहै कि lsनहीं है भ्रमित हैं ls(और विकल्प है कि दोनों उपयोगिताओं में मौजूद एक ही बात मतलब हो सकता है नहीं है, और यह एक बहुत गड़बड़ हो जाएगा)।

cutके बाद duबस का पहला स्तंभ बाहर कटौती du -hsउत्पादन (आकार)।

मैंने duआउटपुट को बाईं ओर रखने का फैसला किया , अन्यथा मुझे एक वॉबीली राइट कॉलम (फ़ाइल नामों की अलग-अलग लंबाई के कारण) का प्रबंधन करना पड़ता।

आदेश कमांड लाइन झंडे को स्वीकार नहीं करेगा।

यह दोनों में bashऔर में परीक्षण किया गया है ksh93। इससे काम नहीं चलेगा /bin/sh


यह अच्छा है। एक पंक्ति में अनुमतियाँ और आकार
बेन

7

मैं हमेशा इसके बजाय du -sk( -kकिलोबाइट में ध्वज का आकार दिखा रहा हूं) का उपयोग करता हूं ।


5
यह एक टिप्पणी होनी चाहिए, @molf द्वारा अधिक सही और बेहतर ढंग से स्वीकृत उत्तर के लिए अतिरिक्त जानकारी प्रदान करना। इसे अपने आप में एक जवाब नहीं माना जाना चाहिए
कोड_मनस्क


7

ncdu ncurses du

यह भयानक सीएलआई उपयोगिता आपको बड़ी फ़ाइलों और निर्देशिकाओं को आसानी से इंटरैक्टिव रूप से ढूंढने की अनुमति देती है।

उदाहरण के लिए, एक प्रसिद्ध परियोजना के पेड़ के अंदर से हम करते हैं:

sudo apt-get install ncdu
ncdu

परिणाम इसके:

यहां छवि विवरण दर्ज करें

फिर, मैं /driversफ़ोल्डर में जाने के लिए अपने कीबोर्ड पर नीचे और दाईं ओर प्रवेश करता हूं , और मैं देखता हूं:

यहां छवि विवरण दर्ज करें

ncdu केवल पूरे पेड़ के लिए स्टार्टअप पर एक बार पुन: फ़ाइल आकार की गणना करता है, इसलिए यह कुशल है।

"कुल डिस्क उपयोग" बनाम "स्पष्ट आकार" के अनुरूप है du, और मैंने इसे समझाया है: 'du' का आउटपुट अक्सर 'du -b` से इतना अलग क्यों होता है

प्रोजेक्ट होमपेज: https://dev.yorhel.nl/ncdu

संबंधित सवाल:

उबंटू 16.04 में परीक्षण किया गया।

ncdu गैर-संवादात्मक उपयोग

इसकी एक और अच्छी विशेषता ncduयह है कि आप आकार को पहले JSON प्रारूप में डंप कर सकते हैं, और बाद में उनका पुन: उपयोग कर सकते हैं।

उदाहरण के लिए, फ़ाइल चलाने के लिए:

ncdu -o ncdu.json

और फिर इसके साथ अंतःक्रियात्मक रूप से जांच करें:

ncdu -f ncdu.json

यह बहुत उपयोगी है अगर आप एनएफएस जैसे एक बहुत बड़े और धीमी फाइल सिस्टम के साथ काम कर रहे हैं।

इस तरह, आप पहले केवल एक बार निर्यात कर सकते हैं, जिसमें घंटों लग सकते हैं, और फिर फ़ाइलों का पता लगाने, छोड़ने, फिर से अन्वेषण करने आदि।

आउटपुट स्वरूप सिर्फ JSON है, इसलिए इसे अन्य कार्यक्रमों के साथ पुन: उपयोग करना आसान है, जैसे:

ncdu -o -  | python -m json.tool | less

एक सरल निर्देशिका ट्री डेटा संरचना का पता चलता है:

[
    1,
    0,
    {
        "progname": "ncdu",
        "progver": "1.12",
        "timestamp": 1562151680
    },
    [
        {
            "asize": 4096,
            "dev": 2065,
            "dsize": 4096,
            "ino": 9838037,
            "name": "/work/linux-kernel-module-cheat/submodules/linux"
        },
        {
            "asize": 1513,
            "dsize": 4096,
            "ino": 9856660,
            "name": "Kbuild"
        },
        [
            {
                "asize": 4096,
                "dsize": 4096,
                "ino": 10101519,
                "name": "net"
            },
            [
                {
                    "asize": 4096,
                    "dsize": 4096,
                    "ino": 11417591,
                    "name": "l2tp"
                },
                {
                    "asize": 48173,
                    "dsize": 49152,
                    "ino": 11418744,
                    "name": "l2tp_core.c"
                },

उबुन्टु 18.04 में परीक्षण किया गया।


1
गजब का। साझा करने के लिए धन्यवाद!
फ्रैंक फू

मैं सहमत हूं, ncdu जाने का रास्ता है ... लेकिन क्या आप जानते हैं कि JSON फाइल को खोजना संभव है? यही है, किसी विशिष्ट फ़ाइल / फ़ोल्डर का पूर्ण पथ प्राप्त करें।
FGV

1
@FGV मुझे नहीं लगता कि ncdu आउटपुट कर सकता है, एक संभावना एक साधारण अजगर स्क्रिप्ट को हैक करना होगा जो JSON को पार्स करता है।
सिरो सेंटिल्ली 冠状 病毒 iro 事件 at


4

यह एक मुझे पसंद है

अपडेट करें : मैं पिछले एक की तरह नहीं था क्योंकि यह वर्तमान निर्देशिका में फ़ाइलों को नहीं दिखाता था, यह केवल निर्देशिका को सूचीबद्ध करता था।

/varUbuntu पर उदाहरण के लिए आउटपुट :

sudo du -hDaxd1 /var | sort -h | tail -n10

4.0K    /var/lock
4.0K    /var/run
4.0K    /var/www
12K     /var/spool
3.7M    /var/backups
33M     /var/log
45M     /var/webmin
231M    /var/cache
1.4G    /var/lib
1.7G    /var

3

ये सभी महान सुझाव हैं, लेकिन मैं जो उपयोग करता हूं वह है:

du -ksh * | sort -n -r

-ksh यह सुनिश्चित करता है कि फ़ाइलें और फ़ोल्डर मानव-पठनीय प्रारूप में सूचीबद्ध हैं और मेगाबाइट्स, किलोबाइट्स, आदि में, फिर आप उन्हें संख्यात्मक रूप से सॉर्ट करते हैं और सॉर्ट को उल्टा करते हैं ताकि यह पहले वाले को बड़ा कर दे।

इस कमांड का एकमात्र नकारात्मक पहलू यह है कि कंप्यूटर यह नहीं जानता है कि गीगाबाइट मेगाबाइट से बड़ा है इसलिए यह केवल संख्याओं के आधार पर छांटेगा और आप अक्सर इस तरह की लिस्टिंग पाएंगे:

120K
12M
4G

बस इकाई को देखने के लिए सावधान रहें।

यह कमांड मैक पर भी काम करता है (जबकि sort -hउदाहरण के लिए नहीं)।


यदि आप -hउस duकमांड को झंडे से हटाते हैं जिसे आप नीचे काटते हैं
कार्लोस रिकार्डो

या आप सॉर्ट के -hबजाय भी उपयोग कर सकते हैं -n
सेबी

या बस इसे grep G के माध्यम से पाइप करें
gforce89

3
du -S

डु एक और उपयोगी विकल्प होता है: -S, --separate-dirsकह du नहीं उपनिर्देशिका के आकार में शामिल हैं - कुछ अवसरों पर काम।

उदाहरण 1 - निर्देशिका में केवल फ़ाइल आकार दिखाता है :

du -Sh  * 
3,1G    10/CR2
280M    10

उदाहरण 2 - निर्देशिका में फ़ाइल आकार और उपनिर्देशिका दिखाता है:

du -h  * 
3,1G    10/CR2 
3,4G    10



2

यदि आप फ़ाइलों के आकार की तुलना करना चाहते हैं तो बस एक चेतावनी। फ़ाइल सिस्टम, ब्लॉक आकार, ... के आधार पर डु अलग परिणाम देता है।

ऐसा हो सकता है कि फ़ाइलों का आकार भिन्न हो, उदाहरण के लिए आपकी स्थानीय हार्ड-डिस्क और USB मास स्टोरेज डिवाइस पर एक ही डायरेक्टरी की तुलना करना। मैं निर्देशिका स्क्रिप्ट का योग करने के लिए ls सहित निम्नलिखित स्क्रिप्ट का उपयोग करता हूं। सभी उप निर्देशिकाओं को ध्यान में रखते हुए बाइट्स में परिणाम।

echo "[GetFileSize.sh] target directory: \"$1\""

iRetValue=0

uiLength=$(expr length "$1")
if [ $uiLength -lt 2 ]; then
  echo "[GetFileSize.sh] invalid target directory: \"$1\" - exiting!"
  iRetValue=-1
else
  echo "[GetFileSize.sh] computing size of files..."

  # use ls to compute total size of all files - skip directories as they may
  # show different sizes, depending on block size of target disk / file system
  uiTotalSize=$(ls -l -R $1 | grep -v ^d | awk '{total+=$5;} END {print total;}')
  uiLength=$(expr length "$uiTotalSize")
  if [ $uiLength -lt 1 ]; then
    uiTotalSize=0
  fi
  echo -e "[GetFileSize.sh] total target file size: \"$uiTotalSize\""

fi

exit "$iRetValue"

1

वर्तमान निर्देशिका की फ़ाइलों और उपनिर्देशिकाओं के आकार को पुनरावर्ती रूप से प्रदर्शित करने के लिए:

du -h .

समान आकार की जानकारी प्रदर्शित करने के लिए लेकिन बिना उनकी उप-निर्देशिकाओं को पुन: मुद्रित किए (जो एक बड़ी सूची हो सकती है), बस -मैक्स-डेप्थ विकल्प का उपयोग करें :

du -h --max-depth=1 .

1

थोड़ी देर के लिए, मैंने rmबैश में कमांड का उपयोग करने के बजाय अपने होम फ़ोल्डर पर फ़ाइलों को हटाने के लिए Nautilus (RHEL 6.0 पर Gnome डेस्कटॉप पर) का उपयोग किया । नतीजतन, द्वारा दिखाए गए कुल आकार

du -sh

जब मैंने उपयोग किया था, तो प्रत्येक उप-निर्देशिका के डिस्क उपयोग के योग से मेल नहीं खाता था

du -sh *

मुझे यह महसूस करने में थोड़ा समय लगा कि Nautilus अपने ट्रैश फ़ोल्डर में हटाए गए फ़ाइलों को भेजता है, और वह फ़ोल्डर du -sh *कमांड में सूचीबद्ध नहीं है । इसलिए, यदि कोई व्यक्ति समान समस्या का सामना कर रहा है, तो उसे साझा करना चाहता है।


1

हम्म, इस कमांड का उपयोग करने का सबसे अच्छा तरीका है:

du -h -x / | sort -hr >> /home/log_size.txt

तब आप अपने सभी सर्वर पर सभी आकार के फ़ोल्डर प्राप्त करने में सक्षम होंगे। सबसे बड़े आकार खोजने में आपकी मदद करना आसान है।


1

निम्नलिखित को याद रखना आसान है

ls -ltrapR

सूची निर्देशिका सामग्री

-एक लंबी सूची प्रारूप का उपयोग करें

संशोधन समय के अनुसार, नवीनतम पहले

-r, - छांटते समय रिवर्स ऑर्डर करें

-a, --all के साथ शुरू होने वाली प्रविष्टियों को अनदेखा न करें।

-p, - संकेतक-शैली = निर्देशिकाओं के लिए परिशिष्ट / संकेतक स्लैश

-R, - व्यापक सूची उपनिर्देशिका पुनरावर्ती

https://explainshell.com/explain?cmd=ls+-ltrapR


1

यदि आप इस पर अधिक नियंत्रण चाहते हैं sizeकि आप निर्देशिकाओं को सूचीबद्ध करना चाहते हैं, तो आप threshold( -t) स्विच का उपयोग इस प्रकार कर सकते हैं :

$ du -ht 1000000000 | sort --reverse

du- disk usage
h - मानव पठनीय प्रारूप
t - दहलीज आकार

यहां, हम उन सभी निर्देशिकाओं को सूचीबद्ध करना चाहते हैं जो आकार में 1GB से अधिक हैं।

$ du -ht 1G | sort --reverse

स्पष्टीकरण :

विकी में वर्णित इकाइयाँ निम्नलिखित हैं:

K, M, G, T, P, E, Z, Y (1024 की शक्तियां) या
KB, MB, GB, TB, PB, EB, ZB, YB (1000 की शक्तियां)।


0

मैं मार्टिन वाइल्ड के वर्णन के समान एक मुद्दे पर भाग गया, मेरे मामले में rsync के साथ मिरर करने के बाद दो अलग-अलग सर्वरों पर एक ही निर्देशिका की तुलना करना।

एक स्क्रिप्ट का उपयोग करने के बजाय मैंने उस -bध्वज को जोड़ा duजिसमें बाइट्स में आकार गिना जाता है और जहां तक ​​मैं यह निर्धारित कर सकता हूं कि दो सर्वरों के अंतर को समाप्त कर सकता हूं। आप अभी भी -s -hएक सुगम उत्पादन प्राप्त करने के लिए उपयोग कर सकते हैं ।


0

इनबिल स्क्रिप्ट जैसी जगह .bashrc ... जरूरत के अनुसार डीप को एडजस्ट करें।

duh() {
  # shows disk utilization for a path and depth level
  path="${1:-$PWD}"
  level="${2:-0}"
  du "$path" -h --max-depth="$level"
}

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.