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

  • Carlos Delgado

    Carlos Delga

    21 HAZİRAN 2011
  • Fuse

    Fuse

    21 Kasım 2005
  • Jeremy Stark

    Jeremy Stark

    23 Mayıs 2010