अधिक उदारता से, आप अपने द्वारा चुने गए किसी भी नियम से डिस्क उपयोग समूहन के संयोजन find
और awk
रिपोर्ट करने के लिए उपयोग कर सकते हैं। यहां एक कमांड है जो फ़ाइल एक्सटेंशन (जो भी अंतिम अवधि के बाद दिखाई देता है) द्वारा समूहित होता है:
# output pairs in the format: `filename size`.
# I used `nawk` because it's faster.
find -type f -printf '%f %s\n' | nawk '
{
split($1, a, "."); # first token is filename
ext = a[length(a)]; # only take the extension part of the filename
size = $2; # second token is file size
total_size[ext] += size; # sum file sizes by extension
}
END {
# print sums
for (ext in total_size) {
print ext, total_size[ext];
}
}'
कुछ उत्पादन होगा
wav 78167606
psd 285955905
txt 13160