Diese Frage hat hier bereits eine Antwort:
Unter Linux suche ich einen Befehl, um die größte Datei und / oder die größten Verzeichnisse unter einem Verzeichnis aufzulisten.
Diese Frage hat hier bereits eine Antwort:
Unter Linux suche ich einen Befehl, um die größte Datei und / oder die größten Verzeichnisse unter einem Verzeichnis aufzulisten.
Antworten:
Aus einem beliebigen Verzeichnis:
du -a | sort -n -r
Der folgende Befehl zeigt Ihnen eine Ebene von Verzeichnissen und deren Größen
du --max-depth = 1 / path | sort -r -k1,1n
Wenn einer von ihnen wirklich auffällt (der letzte in der Liste ist der größte aufgrund von sort -r
), führen Sie den Befehl in diesem Verzeichnis erneut aus und fahren Sie fort, bis Sie das betreffende Verzeichnis / die betreffende Datei finden.
Wenn Sie nur die zehn größten Dateien haben möchten, tun Sie dies einfach
find / home -type f -exec du -s {} \; | sort -r -k1,1n | Kopf
sort -r
oder nicht. Gibt es eine Möglichkeit, die größte Zahl an die Spitze zu bringen?
sort
oder einbinde sort -r
. Verstehe ich falsch, wie das -r funktioniert? Ich denke, es ist keine große Sache. Ihr Beispiel ist sehr hilfreich und hat mir die Informationen geliefert, die ich brauchte.
sort
ich habe ( sort (GNU coreutils) 8.13
in Ubuntu 12.04.3) funktioniert die Option -r
nicht, wenn -n
sofort folgt -k
( -k1,1n
). Diese Reihenfolge der Optionen funktioniert: sort -rnk1,1
.
Ein Dienstprogramm namens ncdu
gibt Ihnen die Informationen, die Sie suchen.
sudo apt-get install ncdu
Unter OS X kann es mit Homebrew installiert werden:
brew install ncdu
Dieser Beitrag wird Ihnen gut helfen:
cd /path/to/some/where
du -a /var | sort -n -r | head -n 10
du -hsx * | sort -rh | head -10
Versuchen Sie es mit dem folgenden Einzeiler (zeigt die 20 größten Dateien im aktuellen Verzeichnis an):
ls -1Rs | sed -e "s/^ *//" | grep "^[0-9]" | sort -nr | head -n20
oder mit vom Menschen lesbaren Größen:
ls -1Rhs | sed -e "s/^ *//" | grep "^[0-9]" | sort -hr | head -n20
Der zweite Befehl an die Arbeit auf OSX / BSD richtig (wie
sort
muss nicht-h
), müssen Sie die Installationsort
voncoreutils
.
Daher sind diese Aliase nützlich, um sie in Ihren RC- Dateien zu haben (jedes Mal, wenn Sie sie brauchen):
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
G für GIG (um kleinere Dateien / Verzeichnisse auszusortieren)
G
im Dateinamen finden.