2009-01-26 5 views
12

1) Ich bin in einem Verzeichnis 2) Ich möchte herausfinden, wie viel freien Platz dort istWie finde ich den freien Speicherplatz für einen bestimmten Pfad auf einer Linux-Shell?

Gibt es einen einfachen Befehl, der das tut? Ich möchte nicht in fstab oder was auch immer suchen, die Geräte & Mount-Punkte in meinem Kopf zuordnen, um zu bestimmen, wie viel freien Platz ich noch habe.

+2

duplizieren: http://stackoverflow.com/questions/230407/what-is-the-unix-command-to-see-how-much-disk-space-there-is-and-how-much-is -rema – hop

+0

Diese Frage ist keine Dupe von 230407, da sie spezifisch für das Home-Verzeichnis ist. Wie in einer Antwort erwähnt, könnte dem Heimatverzeichnis jedes Benutzers eine Quote auferlegt werden. – Keith

Antwort

34

Versuchen df -h

Besser noch:

df . | awk '$3 ~ /[0-9]+/ { print $4 }' 

No: df -h . oder df -h path-to-file

+0

'df -h' scheint gut zu funktionieren, aber ich kann nicht 'df -h.' Oder' df -h Pfad zu Datei 'arbeiten. Für alle drei dieser Befehle auf meinem Amazon-Server sieht meine Ausgabe wie folgt aus: verwendete Dateisystemgröße Avail Verwenden Sie% Mounted on /dev/xvda1 30G 21G 8.7G 71%/ –

+0

@ D.Tate df gibt die Speicherplatzbelegung zurück. Es scheint also, dass Sie nur eine Partition (Festplatte) auf Ihrem Server haben; nämlich/dev/xvda1. Alle Ihre Dateien befinden sich auf dieser Partition. Sie erhalten also nur die Speicherplatznutzung dieser Partition für alle Dateien. – marli

0
df -Ph $PWD | tail -1 | awk '{ print $3}' 
7

ich folgendes sein kompatibel mit allen verschiedenen df(1) und deren Ausgang verwenden würde, müssen Sie tail(1) verwenden, weil der Regex-Abgleich funktioniert.

12

Der 'df'-Befehl, den andere diskutieren, ist nur die halbe Gleichung. Zu wissen, dass das Dateisystem freien Speicherplatz hat, impliziert nicht, dass der Benutzer Zugriff auf den Speicherplatz hat.

Sie können auch den Befehl:

df -k . 

Um den freien Speicherplatz auf dem aktuellen Dateisystem zu erfahren. 'df' ist klug genug, um den Baum für dich zu gehen und es zu melden. Wenn Sie Kontingente überprüfen möchten (siehe unten), können Sie die Ausgabe von df verarbeiten, um das Dateisystem zu finden, mit dem das Kontingent überprüft werden soll.

Es gibt möglicherweise keine freien Inodes (df -i $ PWD), es könnten reservierte Blöcke für den Superuser vorhanden sein (standardmäßig auf ext2/3/4, 5% der Gesamtsumme sind für root reserviert). Ich glaube, df zeigt den freien Speicherplatz einschließlich der reservierten Blöcke, so dass die Zahl, die Sie sehen, tatsächlich höher ist, als wenn Sie nicht root sind.

Der Benutzer kann Kontingentbeschränkungen haben. Kontingentbeschränkungen sind in diesen Tagen weit weniger verbreitet, da die Speicherkosten so niedrig sind, aber es lohnt sich, dies auch mit dem Befehl quota zu überprüfen.

Verwandte Themen