SORU
1 Mart 2009, Pazar


Shell dosya boyutu hesaplamak

Tüm dosyaları (dizin ağacı) bayt bir dosya ismi kalıbı sadece kabuk kullanarak eşleşen toplam boyutunu hesaplamak için çalışıyorum. Bu ben şimdiye kadar ne var:

-ad *bulun.-exec stat -c%s Geri Al {} \; | awk '{= $1 toplam} END {print toplam}'

Daha kolay bir yolu bunu yapmak için vardır? Basit bir du ya benim için bu anahtarı bulmak gerekir gibi hissediyorum ama bulamadım.

Toplam istiyorum net olmak her yerde anlamına gelen bir dizin ağacı altında bir desen eşleşen dosyaları

du -bs *.Geri Al

sadece geçerli dizindeki dosyaların eşleştiği için işe yaramaz.

CEVAP
1 Mart 2009, Pazar


Deneyin:

find . -name "*.undo" -ls | awk '{total  = $7} END {print total}'

Benim sistem dosyasının boyutu find -ls çıktı yedinci alandır. find … -ls çıkış farklı ise, ayarlayın.

Bu sürüm, varolan dizin bilgileri (boyut) ve yerleşik bul ls özelliğini kullanarak verimli, yarattıkları işlem veya dosya g/Ç kaçınılmalıdır.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Eric Magidson

    Eric Magidso

    4 Ocak 2009
  • The Dubstep FX

    The Dubstep

    5 Mart 2011
  • Tire Rack

    Tire Rack

    31 Mayıs 2007