[LINUX] Berechnen Verwenden Sie% des Befehls df

Wenn es vollständig mit der Festplatte gefüllt ist, wird es ein späteres Festival sein, daher erkenne ich, dass es mit einem kleinen Puffer angezeigt wird, aber wie ist es eigentlich? Wenn ich es berechne, passt es nicht.

$ df  /
Filesystem              1K-blocks     Used Available Use% Mounted on
/dev/mapper/centos-root  30909700 14577164  16332536  48% /

Die Anzeige von df beträgt 48%, aber (use * 100) / (Used + Available) Diese Berechnung ergibt 47%.

echo "(14577164 * 100) / (14577164 + 16332536)" | bc
47

Versuchen wir es mit Core-Utils.

df.c


        case PCENT_FIELD:
        case IPCENT_FIELD:
          {
            double pct = -1;
            if (! known_value (v->used) || ! known_value (v->available))
              ;
            else if (!v->negate_used
                     && v->used <= TYPE_MAXIMUM (uintmax_t) / 100
                     && v->used + v->available != 0
                     && (v->used + v->available < v->used)
                     == v->negate_available)
              {
                uintmax_t u100 = v->used * 100;
                uintmax_t nonroot_total = v->used + v->available;
                pct = u100 / nonroot_total + (u100 % nonroot_total != 0);
              }

Ist es ein Gefühl, dass es im Allgemeinen +1 ist? Erstens gibt dieses (u100% nonroot_total! = 0) 0 oder 1 zurück.

$ cat x.c
#include <stdio.h>
int main(void)
{
  printf("%d\n", (0 != 0));
  printf("%d\n", (1 != 0));
}
$ gcc x.c
$ ./a.out
0
1

Recommended Posts

Berechnen Verwenden Sie% des Befehls df
Zusammenfassung der Verwendung von pandas.DataFrame.loc
Zusammenfassung der Verwendung von pyenv-virtualenv
Verwendung von MBDyn (Befehlseinstellung)
Zusammenfassung der Verwendung von csvkit
[Python] Zusammenfassung der Verwendung von Pandas
[Python] Verwendung von __command__, Funktionserklärung
[Linux] Verwendung des Befehls echo
[Python2.7] Zusammenfassung der Verwendung von unittest
Jupyter Notebook Grundlagen der Verwendung
Verwendung des CUT-Befehls (mit Beispiel)
Grundlagen von PyTorch (1) - Verwendung von Tensor-
Zusammenfassung der Verwendung der Python-Liste
[Python2.7] Zusammenfassung der Verwendung des Unterprozesses
[Frage] Wie verwende ich plot_surface von Python?
Verwendung von xml.etree.ElementTree
Verwendung von virtualenv
Wie benutzt man Seaboan?
Verwendung von Image-Match
Wie man Shogun benutzt
Verwendung von Pandas 2
Verwendung von Virtualenv
Verwendung von numpy.vectorize
Verwendung von pytest_report_header
Wie man teilweise verwendet
Wie man Bio.Phylo benutzt
Verwendung von SymPy
Wie man x-means benutzt
Verwendung von WikiExtractor.py
Verwendung von IPython
Verwendung von virtualenv
Wie benutzt man Matplotlib?
Verwendung von iptables
Wie benutzt man numpy?
Verwendung von TokyoTechFes2015
Wie benutzt man venv
Verwendung des Wörterbuchs {}
Wie benutzt man Pyenv?
Verwendung der Liste []
Wie man Python-Kabusapi benutzt
Verwendung von OptParse
Verwendung von return
Wie man Imutils benutzt
So berechnen Sie die Volatilität einer Marke
Verwendung von Folium (Visualisierung von Standortinformationen)
[Python] Verwendung von zwei Arten von type ()
Nicht viel erwähnt, wie man Pickle benutzt
Zusammenfassung der Verwendung von MNIST mit Python
[Für Anfänger] Wie man den Befehl say mit Python benutzt!
Verwendung der Suche sortiert
[gensim] Verwendung von Doc2Vec
Hinweise zur Verwendung von AIST Spacon ABCI
Ich habe versucht zusammenzufassen, wie man Matplotlib von Python verwendet
Verstehen Sie, wie man Django-Filter verwendet
Verwendung des Generators