Szukam programu, który pokaże mi, które pliki / katalogi zajmują najwięcej miejsca, na przykład:
74% music
\- 60% music1
\- 14% music2
12% code
13% other
Wiem, że jest to możliwe w KDE3, ale wolałbym tego nie robić - preferowane są KDE4 lub linia poleceń.
linux
disk-space
Robert Munteanu
źródło
źródło
Odpowiedzi:
Aby znaleźć największe 10 plików (linux / bash):
find . -type f -print0 | xargs -0 du | sort -n | tail -10 | cut -f2 | xargs -I{} du -sh {}
Aby znaleźć największe 10 katalogów:
find . -type d -print0 | xargs -0 du | sort -n | tail -10 | cut -f2 | xargs -I{} du -sh {}
Jedyną różnicą jest
-type {d:f}
.Obsługuje pliki ze spacjami w nazwach i generuje rozmiary plików czytelne dla człowieka. Największy plik na liście jako ostatni. Argumentem do ogona jest liczba wyników, które widzisz (tutaj 10 największych).
Istnieją dwie techniki obsługi spacji w nazwach plików. Do
find -print0 | xargs -0
zastosowania ograniczników NULL zamiast spacji, a drugixargs -I{}
korzysta z nowej linii zamiast spacji aby zakończyć elementów wejściowych.przykład:
źródło
find . -type f -print0 | xargs -0 du | sort -nr | head -10 | cut -f2 | xargs -I{} du -sh {}
(tzn. Użyjsort -nr | head -10
zamiastsort -n | tail -10
)Zawsze używam
ncdu
. Jest interaktywny i bardzo szybki.źródło
ncdu
--- to jakhtop
za miejsce na dysku. Super przydatne![t] [g] [g]
.Szybki podgląd:
wyświetla wszystkie katalogi z największym ostatnim.
lub ponownie unikając zbędnego *:
wyświetla wszystkie katalogi w bieżącym katalogu z największymi ostatnimi.
(-n parametr do sortowania jest wymagany, aby pierwsze pole było posortowane jako liczba, a nie jako tekst, ale wyklucza to użycie parametru -h do du, ponieważ potrzebujemy znaczącej liczby do sortowania)
Inne parametry du są dostępne, jeśli chcesz podążać za dowiązaniami symbolicznymi (domyślnie nie podążaj za dowiązaniami symbolicznymi) lub po prostu pokaż rozmiar zawartości katalogu, na przykład z wyłączeniem podkatalogów. du może nawet zawrzeć na liście datę i godzinę ostatniej zmiany dowolnego pliku w katalogu.
źródło
find {/path/to/directory} -type f -size +{file-size-in-kb}k -exec ls -lh {} \; | awk '{ print $8 ": " $5 }'
du -h --max-depth=1 2>/dev/null | sort -nr | grep -v ^0
- niecoW większości rzeczy wolę narzędzia CLI, ale jeśli chodzi o korzystanie z dysku, bardzo lubię filtrowanie światła . Prezentacja jest dla mnie bardziej intuicyjna niż jakiekolwiek inne narzędzie do zarządzania przestrzenią, jakie widziałem.
źródło
Filelight jest lepszy dla użytkowników KDE, ale dla kompletności (tytuł pytania jest ogólny) Muszę wspomnieć, że Baobab jest zawarty w Ubuntu, czyli Disk Usage Analyzer:
źródło
Narzędzie GUI, KDirStat , pokazuje dane zarówno w formie tabeli, jak i graficznie. Możesz naprawdę szybko zobaczyć, gdzie używana jest większość miejsca.
Nie jestem pewien, czy jest to dokładnie to narzędzie KDE, którego nie chciałeś, ale myślę, że nadal powinno być wymienione w takim pytaniu. Jest dobry i wiele osób prawdopodobnie tego nie wie - dowiedziałem się o tym dopiero niedawno.
źródło
ncdu
zamiast tego.Kombinacja jest zawsze najlepszą sztuczką na Uniksie.
Wyświetli rozmiary katalogów w KB i posortuje, aby dać największe na końcu.
Widok drzewa wymaga jednak trochę więcej fu ... czy to naprawdę jest potrzebne?
Zauważ, że ten skan jest zagnieżdżony w katalogach, więc będzie ponownie liczyć podkatalogi dla wyższych katalogów, a katalog podstawowy
.
pojawi się na końcu jako całkowita suma wykorzystania.Możesz jednak użyć kontroli głębokości w znalezisku, aby wyszukać na określonej głębokości.
I bardziej zaangażuj się w skanowanie ... w zależności od tego, czego chcesz. Kontrola głębokości za
find
pomocą-maxdepth
i-mindepth
może ograniczać się do określonej głębokości podkatalogu.Oto wyrafinowana odmiana twojego zbyt długiego problemu z arg
źródło
Lubię GT5 . Możesz poruszać się po drzewie i otwierać podkatalogi, aby uzyskać więcej szczegółów. Do wyświetlania wyników wykorzystuje przeglądarkę internetową w trybie tekstowym, taką jak ryś. Zainstaluj elinks, aby uzyskać najlepsze wyniki.
źródło
Chociaż nie daje to takiego zagnieżdżonego wyjścia, spróbuj
du
Uruchomienie tego w moim folderze Dokumenty wyrzuca następujące:
Następnie możesz posortować dane wyjściowe, przesyłając je do
sort
źródło
Oto skrypt, który robi to automatycznie.
http://www.thegeekscope.com/linux-script-to-find-largest-files/
Poniżej przedstawiono przykładowe dane wyjściowe skryptu:
Ten skrypt może być bardzo przydatny i przydatny!
źródło
Chociaż znalezienie procentowego wykorzystania dysku przez każdy plik / katalog jest korzystne, w większości przypadków wystarczająca jest znajomość największych plików / katalogów na dysku.
Więc moje ulubione to:
A wynik jest taki:
źródło
Aby znaleźć 25 najlepszych plików w bieżącym katalogu i jego podkatalogach:
find . -type f -exec ls -al {} \; | sort -nr -k5 | head -n 25
Wyprowadzi 25 najlepszych plików, sortując je na podstawie rozmiaru plików za pomocą polecenia potokowego „sort -nr -k5”.
źródło
Inną alternatywą jest agedu, która dzieli miejsce na dysku według czasu ostatniego dostępu, co ułatwia zlokalizowanie plików marnujących miejsce.
Działa nawet na serwerze bez X Windows, obsługując tymczasowe strony internetowe, dzięki czemu można analizować zdalnie za pomocą wykresów. Zakładając, że adres IP serwera to 192.168.1.101, możesz wpisać go w wierszu polecenia serwera
Spowoduje to wydrukowanie nazwy użytkownika, hasła i adresu URL, za pomocą których można uzyskać dostęp do „GUI” i przeglądać wyniki. Po zakończeniu zakończ
agedu
zCtrl+D
na serwerze.źródło
Wyświetla listę katalogu głównego.
źródło
Aby uzupełnić listę nieco bardziej, dodaję mój ulubiony analizator użycia dysku, czyli
xdiskusage
.GUI pamięta mnie o innych dobrych narzędziach X 'X, jest szybki i nie wzdęty, ale mimo to możesz łatwo nawigować w hierarchii i mieć kilka opcji wyświetlania:
źródło
Wypróbuj następującą linijkę (wyświetla 20 największych plików w bieżącym katalogu):
lub w rozmiarach czytelnych dla ludzi:
Więc te aliasy są przydatne w plikach rc (za każdym razem, gdy ich potrzebujesz):
źródło