Bir dizinin boyutunu bilmek nasıl? Alt dizinler ve dosyalar dahil.
Bir dizinin boyutunu bilmek nasıl? Alt dizinler ve dosyalar dahil.
Yanıtlar:
du -s directory_name
Veya okunabilir çıktılar elde etmek için:
du -sh directory_name
-sSeçenek her alt boyutunu, sadece toplam boyutunu listelemek anlamına gelir.
du -sh bagmükemmel çalışıyordu!
Ncdu gibi ayrı bir paket kullanmak iyi sonuç verirken, birçok klasörün aynı karşılaştırmasını, bir dereceye kadar, sadece boyutlandırılacak klasörlerin bir listesini vererek yapabilirsiniz. Örneğin, sisteminizdeki üst düzey dizinleri karşılaştırmak için ...
cd /
sudo du -sh ./*
du -sh /*
du -csh
-c büyük toplam üretir
-cAnlamda birlikte kullanmak yapmaz -s, doğru? -syalnızca belirtilen dizinin boyutunu, dizinin toplam boyutunu görüntüler.
Deneyin
du -hax --max-depth=1 / | grep '[0-9]G' | sort -nr
Bu, büyük dizinleri daha sonra kullanarak elemek için bulmalarına yardımcı olur. du -sh ./*
Ayrıca ls -ldh kullanabilirsiniz:
ls -ldh /etc
drwxr-xr-x 145 root root 12K 2012-06-02 11:44 /etc
-L uzun liste içindir; -d dir içeriğini göstermek için dir bilgilerini görüntülemek içindir, -h huma okunabilir formatta boyutu görüntülemek içindir.
Her zaman "ncdu" paketini yüklerim ve tüm dizinlerin çıktılarını grafiksel olarak gösteririm. Bunun nedeni genellikle, tek bir dizinin ne kadarının toplandığına bakılmaksızın makinelerimdeki en fazla disk alanını neyin kapladığını bilmem gerekir.
Kullanım: sudo ncdu /( sudoOkuma iznine sahip olduğunuz klasörlere ihtiyacınız yoktur ).
Tüm dosya sistemindeki disk kullanım istatistiklerini taramak biraz zaman alabilir. Güzel bir komut satırı grafik gösterimi vardır ve taranan yolda daha derine veya daha yükseğe çıkmak gibi ok tuşlarını kullanarak klavyeyle gezinmeyi içerir. Öğeleri tuşuna basarak da silebilirsiniz D.
Awk Velor kütüphanesinden "file-size.sh" dosyasını kullanabilirsiniz :
ls -ARgo "$@" | awk '{q += $3} END {print q}'
du -hd1
İnsan tarafından okunabilir biçimde, tüm dizinlerin boyutlarını listeler;
656K ./rubberband
2.2M ./lame
652K ./pkg-config
Zaten en iyi cevabı verildiğinden aşağıdaki komutu kullandım
sudo find . -maxdepth 1 -exec du -shk {} \;| awk 'NR >1'| awk 'BEGIN{sum=1}{sum=sum+$1}END{print sum}'
çıktı
sudo find . -maxdepth 1 -exec du -shk {} \;| awk 'NR >1'| awk 'BEGIN{sum=1}{sum=sum+$1}END{print sum}'
679445
duvarsayılan birim POSIX'e göre 512 bayt blok ve Linux'ta (ortam değişkeniPOSIXLY_CORRECTayarlanmadıkça) veya ile kilobayttırdu -k.