GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Überprüfen Sie den freien Speicherplatz für die aktuelle Partition in Bash

  1. df Befehl :Speichernutzung des Dateisystems melden
  2. du Befehl :Speicherplatznutzung der Datei schätzen

Geben Sie df -h ein oder df -k freien Speicherplatz auflisten:

 $ df -h

ODER

 $ df -k

du zeigt, wie viel Platz eine oder mehrere Dateien oder Verzeichnisse belegen:

 $ du -sh

Die -s Option fasst den Speicherplatz zusammen, den ein Verzeichnis verwendet, und -h Option bietet Von Menschen lesbar Ausgabe.


Ja:

df -k .

für das aktuelle Verzeichnis.

df -k /some/dir

wenn Sie ein bestimmtes Verzeichnis überprüfen möchten.

Vielleicht möchten Sie sich auch den stat(1) ansehen Befehl, wenn Ihr System es hat. Sie können Ausgabeformate angeben, um das Parsen Ihres Skripts zu erleichtern. Hier ist ein kleines Beispiel:

$ echo $(($(stat -f --format="%a*%S" .)))

Ich denke, dies sollte ein Kommentar oder eine Bearbeitung der Antwort von ThinkingMedia auf genau diese Frage sein (überprüfen Sie den freien Speicherplatz für die aktuelle Partition in Bash), aber ich darf keinen Kommentar abgeben (nicht genügend Wiederholung) und meine Bearbeitung wurde abgelehnt (Grund:"Dies sollte ein Kommentar oder eine Antwort sein"). Also bitte, Mächte des SO-Universums, verdammen Sie mich nicht dafür, dass ich die "Antwort" eines anderen wiederholt und korrigiert habe. Aber jemand im Internet hat sich geirrt!™ und sie haben mich nicht reparieren lassen.

Der Code

  df --output=avail -h "$PWD" | sed '1d;s/[^0-9]//g'

hat einen wesentlichen Fehler:Ja, es wird 50G ausgegeben kostenlos als 50 -- aber es wird auch 5.0M ausgegeben kostenlos als 50 oder 3.4G kostenlos als 34 oder 15K kostenlos ab 15.

Um ein Skript mit dem Zweck zu erstellen, nach einer bestimmten Menge an freiem Speicherplatz zu suchen, müssen Sie die Unit kennen, gegen die Sie suchen. Entfernen Sie es (als sed im Beispiel oben) machen die Zahlen keinen Sinn mehr.

Wenn Sie wirklich wollen, dass es funktioniert, müssen Sie so etwas tun:

FREE=`df -k --output=avail "$PWD" | tail -n1`   # df -k not df -h
if [[ $FREE -lt 10485760 ]]; then               # 10G = 10*1024*1024k
     # less than 10GBs free!
fi;

Auch für einen Installateur zu df -k $INSTALL_TARGET_DIRECTORY könnte sinnvoller sein als df -k "$PWD" .Abschließend beachten Sie bitte, dass der --output flag ist nicht in jeder Version von df / linux verfügbar.


Linux
  1. Wie viel freien Speicherplatz sollte ich auf meinem Server haben?

  2. Gewusst wie:Freier Speicherplatz durch Reduzierung reservierter Blöcke

  3. Wie erhalte ich programmgesteuert den freien Speicherplatz für ein Verzeichnis in Linux

  4. fsck:Optionen für die gründlichste Festplattenprüfung

  5. Wie überprüfe ich, wie viel freier Speicherplatz auf einem Gerät verbleibt, um eine Partition zu erstellen?

Ubuntu 22.04 Speicherplatzprüfung

So überprüfen Sie die Speicherplatznutzung in Linux

Df-Befehl in Linux (Speicherplatz prüfen)

So überprüfen Sie den freien Speicherplatz unter Linux [Terminal- und GUI-Methoden]

So überprüfen Sie den freien Speicherplatz unter Linux

Linux-df-Befehl zum Überprüfen des Speicherplatzes