Ist es möglich, die größten Dateien auf meiner Festplatte aufzulisten? Ich verwende häufig df -H
, um meine Datenträgernutzung anzuzeigen, aber dies gibt nur den vollen Prozentsatz, die verbleibenden GB usw. an.
Ich mache viele datenintensive Berechnungen, mit einer großen Anzahl kleiner Dateien und einer sehr kleinen Anzahl sehr großer Dateien. Da der größte Teil meines Speicherplatzes in einer sehr kleinen Anzahl von Dateien gespeichert ist, kann es schwierig sein, den Speicherort dieser großen Dateien zu ermitteln. Das Löschen einer 1-kB-Datei schafft nicht viel Speicherplatz, das Löschen einer 100-GB-Datei jedoch. Gibt es eine Möglichkeit, die Dateien auf der Festplatte nach ihrer Größe zu sortieren?
Vielen Dank.
Antworten:
Mit den standardmäßig verfügbaren Werkzeugen:
So listen Sie die 10 größten Dateien aus dem aktuellen Verzeichnis auf:
du . | sort -nr | head -n10
So listen Sie die größten Verzeichnisse aus dem aktuellen Verzeichnis auf:
du -s * | sort -nr | head -n10
UPDATE Heutzutage verwende ich normalerweise eine besser lesbare Form (wie Jay Chakra in einer anderen Antwort erklärt und das weglässt
| head -n10
, einfach vom Bildschirm scrollen lassen. Die letzte Zeile enthält die größte Datei oder das größte Verzeichnis (Baum).Manchmal, z. Wenn Sie im aktuellen Verzeichnis viele Mount-Punkte haben, anstatt
-x
oder mehrere zu verwenden--exclude=PATTERN
, ist es einfacher, das Dateisystem ( häufig/mnt
) auf einem nicht verwendeten Mount-Punkt zu mounten und von dort aus zu arbeiten.Beachten Sie jedoch, dass bei der Arbeit mit großen (NFS-) Volumes das Speicher-Backend (Filer) erheblich belastet werden kann, wenn
du
viele (Unter-) Verzeichnisse ausgeführt werden. In diesem Fall ist es besser,quota
die Lautstärke einzustellen.quelle
ls -Sl | head
auflisten?du
durchläuft den gesamten Verzeichnisbaum, während ls -S nur das aktuelle Verzeichnis überprüft.Zur Antwort von jippie hinzufügen
So listen Sie die größten Verzeichnisse des aktuellen Verzeichnisses in einem für Menschen lesbaren Format auf:
du -sh * | sort -hr | head -n10
Stichprobe:
Es macht es bequemer zu lesen :)
quelle
Probieren Sie es aus
ncdu
, da es Ihnen einen Überblick über die Festplattennutzung geben kann. Von seiner Website:quelle
(Gnu)
du -max /dir | sort -n
Zeigt große Dateien sowie große Verzeichnisse an und kann verwendet werden, um zu bestimmen, wo Sie eine Bereinigung durchführen müssen.(Ich weiß, das ist ein ziemlich alter Baum: p)
quelle
Es gibt eine einfache und effektive Möglichkeit, die Größe jeder Datei und jedes Verzeichnisses in Ubuntu zu ermitteln:
Anwendungen> Zubehör> Disk Usage Analyzer
Klicken Sie in diesem Fenster in der Symbolleiste auf die Schaltfläche "Dateisystem durchsuchen". Nach kurzer Zeit (Sekunden) haben Sie die Festplattenauslastung aller Verzeichnisse und Dateien.
quelle
Wenn Sie ein grafisches Tool bevorzugen, gibt es https://github.com/shundhammer/qdirstat
quelle
Mit diesem Befehl können Sie versuchen, alle Dateien aufzulisten, die größer als 20 MB sind.
quelle
ls -lh
dannsort
??ls -s
oderstat -c %b
sind wohl besser.Geben Sie den folgenden Befehl ein
dann tippe
Der obige Befehl gibt an, wie viel Speicher von welchem Verzeichnis belegt wird. Danach müssen Sie entscheiden, welches Verzeichnis oder welche Datei Sie löschen möchten
quelle
Sie können mit diesem Befehl versuchen, es wird die große Datei aufgelistet:
quelle
quelle