أدناه هو ما أستخدمه لطباعة المجموع ، المجلد ، وحجم الملف:
$ du -sch /home/vivek/* | sort -rh
التفاصيل
------------------------------------------------------------ -c, --total produce a grand total -h, --human-readable print sizes in human readable format (e.g., 1K 234M 2G) -s, --summarize display only a total for each argument ------------------------------------------------------------- -h, --human-numeric-sort compare human readable numbers (e.g., 2K 1G) -r, --reverse reverse the result of comparisons
الناتج
70M total 69M /home/vivek/Downloads/gatling-charts-highcharts-bundle-2.2.2/lib992K /home/vivek/Downloads/gatling-charts-highcharts-bundle-2.2.2/results292K /home/vivek/Downloads/gatling-charts-highcharts-bundle-2.2.2/target 52K /home/vivek/Downloads/gatling-charts-highcharts-bundle-2.2.2/user-files
-h Print the size of each file but in a more human readable way, e.g. appending a size letter for kilo‐ bytes (K), megabytes (M), gigabytes (G), terabytes (T), petabytes (P) and exabytes (E).--du For each directory report its size as the accumulation of sizes of all its files and sub-directories (and their files, and so on). The total amount of used space is also given in the final report (like the 'du -c' command.)
جعلت الإجابات من الواضح أن du هي أداة للعثور على الحجم الإجمالي للدليل. ومع ذلك ، هناك بعض العوامل التي يجب مراعاتها:
من حين لآخر, du يمكن أن يكون الإخراج مضللا لأنه يبلغ عن المساحة المخصصة بواسطة نظام الملفات ، والتي قد تكون مختلفة عن مجموع أحجام الملفات الفردية. عادة ما يقوم نظام الملفات بتخصيص 4096 بايت لملف حتى إذا قمت بتخزين حرف واحد فقط فيه!
اختلافات الإخراج بسبب قوة 2 وقوة 10 وحدات. ال -h التبديل إلى du يقسم عدد البايتات على 2^10 (1024), 2^20 (1048576) الخ لإعطاء إخراج الإنسان للقراءة. قد يكون الكثير من الناس أكثر اعتيادا على رؤية قوى 10 (على سبيل المثال 1 ك = 1000 ، 1 م = 1000000) ويفاجأون بالنتيجة.
للعثور على المجموع الكلي لأحجام جميع الملفات في دليل ، بالبايت ، قم بما يلي:
أنا مكيفة ل ll الأمر الذي هو الاسم المستعار ل ls -alF. إنه يفتقد فقط عدد الملفات وحجم الملفات في الأسفل. لقد لعبت مع du و tree ولكن لا يمكن الحصول على المجاميع كنت بحاجة. لذلك أنا خلقت lll للقيام بذلك بالنسبة لي.
حفظ الملف والموارد باستخدام . ~/.bashrc (أو يمكنك إعادة تشغيل المحطة الطرفية).
إخراج العينة
الشيء الجميل حول ll الإخراج هو انها الألوان. يتم الحفاظ على هذا مع lll ولكن فقدت عند استخدام find أو du:
ليرة تركية ؛ الدكتور
وظيفة مكافأة يمكنك إضافتها إلى ~/.bashrc يسمى BytesToHuman(). هذا يفعل ما يتوقعه معظم مستخدمي وحدة التحكم من تحويل أعداد كبيرة إلى ميب ، بنك الخليج الدولي ، إلخ:
function BytesToHuman() { # https://unix.stackexchange.com/questions/44040/a-standard-tool-to-convert-a-byte-count-into-human-kib-mib-etc-like-du-ls1/259254#259254 read StdIn b=${StdIn:-0}; d=''; s=0; S=(Bytes {K,M,G,T,E,P,Y,Z}iB) while ((b > 1024)); do d="$(printf ".%02d" $((b % 1024 * 100 / 1024)))" b=$((b / 1024)) let s++ done echo "$b$d ${S[$s]}"} # BytesToHuman ()
التالي اقلب التعليق بين سطرين في lll () وظيفة لتبدو مثل هذا: