Jak znaleźć największe katalogi lub największe pliki? [duplikować]

33

W systemie Linux szukam polecenia, aby wyświetlić największy plik i / lub największe katalogi w katalogu.

Eric V.
źródło
Najbardziej użytecznym narzędziem, które znalazłem, jest xdiskusage ( xdiskusage.sourceforge.net ). Pokazuje graficznie, gdzie znajdują się pliki - według rozmiaru. Świetne narzędzie! (i działa bezpośrednio z X11)
jcoppens
Jak to jest powiedziane na niektóre pytania, które zostały zamknięte jako nie na temat? To nie ma sensu
kenorb

Odpowiedzi:

17

Z dowolnego katalogu:

du -a | sort -n -r

Brent Worden
źródło
1
pokazuje to pojedyncze pliki, ale pytanie dotyczy również katalogów
knocte
du bez argumentów podsumowuje użycie dysku przez katalogi. du z -a tworzy te same informacje katalogowe i obejmuje również użycie dysku dla poszczególnych plików.
Brent Worden,
nie można uruchomić sortowania, gdy brakuje Ci miejsca: = (
Jonathan Henson
28

Następujące polecenie pokazuje jeden poziom katalogów i ich wielkości

du --max-depth = 1 / ścieżka | sort -r -k1,1n

Jeśli jeden z nich naprawdę wystaje (ostatni z listy jest największy z tego powodu sort -r), to ponownie uruchom komendę w tym katalogu, a następnie kontynuuj, aż znajdziesz obrażający katalog / plik.

Jeśli potrzebujesz tylko dziesięciu największych plików

find / home -type f -exec du -s {} \; | sort -r -k1,1n | głowa

Marcin
źródło
największa liczba kończy się na dole niezależnie od tego, czy dodam, sort -rczy nie. Czy jest sposób, aby zdobyć największą liczbę na górze?
squarecandy
Musisz wskazać, aby posortować, według której kolumny chcesz posortować, i że jest to liczba (nie alfanumeryczna). Właśnie tak zrobiłby -k1,1rn. Domyślnie sortowanie używa sortowania alfanumerycznego w pierwszej kolumnie.
Marcin
Tak, sortuje poprawnie z tym, ale jest w porządku rosnącym od niskich do wysokich liczb, bez względu na to, sortczy dołączę lub sort -r. Czy nie rozumiem, jak działa -r? Myślę, że to nie jest wielka sprawa. Twój przykład jest bardzo pomocny i zapewnił mi potrzebne informacje.
squarecandy
2
Z sortI have ( sort (GNU coreutils) 8.13w Ubuntu 12.04.3) opcja -rnie działa, jeśli -nnatychmiast następuje -k( -k1,1n). Ta kolejność opcji działa: sort -rnk1,1.
pabouk
27

Narzędzie o nazwie ncdudaje informacje, których szukasz.

sudo apt-get install ncdu

W systemie OS X można go zainstalować za pomocą Homebrew:

brew install ncdu
David Pratt
źródło
2
+1 Nigdy wcześniej o tym nie słyszałem - świetnie działał też na Macu.
Andrew E
Jest to o wiele ładniejsze rozwiązanie niż obie wyższe odpowiedzi.
AlexLordThorsen
To oszałamiające. Zaproponuj to nad wszystkimi innymi odpowiedziami!
Allen Gingrich,
4

du -sk * | sort -nr | głowa -1

Spowoduje to wyświetlenie największego katalogu / pliku w katalogu w KB. Zmiana wartości nagłówka spowoduje utworzenie pierwszych x plików / katalogów.

Sridharpp
źródło
2

Ten post pomoże ci dobrze:

cd /path/to/some/where
du -a /var | sort -n -r | head -n 10
du -hsx * | sort -rh | head -10
Matz
źródło
2

Następujące polecenie zwróci 10 największych plików z podanego /path

du -a -h / ścieżka | sort -h -r | głowa -n 10

Lubię używać -hopcji dla czytelności. Zarówno dui sorttrzeba mieć -h.

Jiang
źródło
1

Posługiwać się

ls -A | xargs -I artifact du -ms artifact | sort -nr

Opcjonalnie możesz dodać rurkę i użyć head -5

Abhishek
źródło
0

Użyj du. Spróbuj to, aby zamówić wynik:

du | sort -n
Heisenbug
źródło
0

Wypróbuj następującą linijkę (wyświetla 20 największych plików w bieżącym katalogu):

ls -1Rs | sed -e "s/^ *//" | grep "^[0-9]" | sort -nr | head -n20

lub w rozmiarach czytelnych dla ludzi:

ls -1Rhs | sed -e "s/^ *//" | grep "^[0-9]" | sort -hr | head -n20

Drugie polecenie, aby poprawnie działać na OSX / BSD (jak sortnie ma -h), musisz zainstalować sortz coreutils.

Więc te aliasy są przydatne w plikach rc (za każdym razem, gdy ich potrzebujesz):

alias big='du -ah . | sort -rh | head -20'
alias big-files='ls -1Rhs | sed -e "s/^ *//" | grep "^[0-9]" | sort -hr | head -n20'
kenorb
źródło
-5
du -sh /path * | sort -nr | grep G

G jak GIG (aby usunąć mniejsze) pliki / katalogi

niecka
źródło
Wyświetla listę wszystkich plików i folderów, pokazując rozmiar. Nie sortuje rozmiaru według bajtów K, M lub G, chyba że ZAPRASZAMY to, jak pokazano
Kanadyjczyk Luke REINSTATE MONICA
Ponadto znajdzie wszystko, co Gzawiera nazwę pliku.
Kevin Panko