سؤال باش: عرض كل مجلد فرعي في تنسيق قائمة باستخدام سطر سطر واحد؟


أرغب في الحصول على قائمة بالدلائل وأحجامها في شكل قائمة مثل الطريقة التي تحصل عليها عند قيامك بذلك 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



اجابة ممتازة. على نظام التشغيل Mac OSX --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



ولكن حذار! لماذا لا يجب تحليل ناتج ls (1) - Kamil Maciorowski


يستحق أن أذكر استخدام القرص NCurses أمر شل.

Ncdu هو محلل استخدام القرص مع واجهة ncurses. أنه   مصممة للعثور على خناقات الفضاء على خادم بعيد حيث لم يكن لديك   كامل الإعداد الرسومية المتاحة ، لكنها أداة مفيدة حتى على   أنظمة سطح المكتب العادية. يهدف Ncdu ليكون سريعًا وبسيطًا وسهل الاستخدام ،   وينبغي أن تكون قادرة على تشغيل في أي بيئة تشبه POSIX مع الحد الأدنى   تثبيت ncurses.


1
2018-06-12 12:29