Bu sorunun zaten burada bir cevabı var:
Linux altında, bir dizindeki en büyük dosyayı ve / veya en büyük dizinleri listelemek için bir komut arıyorum.
Bu sorunun zaten burada bir cevabı var:
Linux altında, bir dizindeki en büyük dosyayı ve / veya en büyük dizinleri listelemek için bir komut arıyorum.
Yanıtlar:
Herhangi bir dizinden:
du -a | sort -n -r
Aşağıdaki komut size bir dizin seviyesini ve boyutlarını gösterir.
du - max derinliği = 1 / yol | sıralama -r -k1,1n
Bunlardan biri gerçekten yapışırsa (listedeki sonuncusu nedeniyle en büyüğüdür sort -r
), o zaman bu dizindeki komutu yeniden çalıştırın ve sonra da soruna neden olan dizini / dosyayı bulana kadar devam edin.
Tek istediğin en büyük on dosya ise sadece yap
/ home-türünü bulun f -exec du -s {} \; | sıralama -r -k1,1n | kafa
sort -r
. En büyük sayıyı en üste çıkarmanın bir yolu var mı?
sort
ya sort -r
. -R'nin nasıl çalıştığını yanlış mı anlıyorum? Sanırım önemli bir şey değil. Örneği çok yardımcı oldu ve ihtiyacım olan bilgiyi bana getirdi.
sort
ben (sahip sort (GNU coreutils) 8.13
Ubuntu 12.04.3 olarak) seçeneği -r
işi yapmazsa -n
hemen izler -k
( -k1,1n
). Seçeneklerin Bu emir çalışır: sort -rnk1,1
.
Çağrılan bir yardımcı program ncdu
size aradığınız bilgileri verecektir.
sudo apt-get install ncdu
OS X'te, Homebrew kullanılarak yüklenebilir:
brew install ncdu
Bu gönderi size yardımcı olacaktır:
cd /path/to/some/where
du -a /var | sort -n -r | head -n 10
du -hsx * | sort -rh | head -10
Aşağıdaki tek astarı deneyin (geçerli dizindeki en büyük 20 dosyayı görüntüler):
ls -1Rs | sed -e "s/^ *//" | grep "^[0-9]" | sort -nr | head -n20
veya okunabilir boyutlarda:
ls -1Rhs | sed -e "s/^ *//" | grep "^[0-9]" | sort -hr | head -n20
Düzgün OSX / BSD üzerinde çalışmaya İkinci komut (olarak
sort
yok-h
), yüklemek gerekirsort
dancoreutils
.
Bu yüzden bu takma adlar, rc dosyalarınızda (her ihtiyacınız olduğunda) kullanmanız için yararlıdır :
alias big='du -ah . | sort -rh | head -20'
alias big-files='ls -1Rhs | sed -e "s/^ *//" | grep "^[0-9]" | sort -hr | head -n20'
du -sh /path * | sort -nr | grep G
GIG için G (daha küçük olanları ayıklamak için) dosyalar / dizinler
G
dosya adında bir şey bulacaktır .