Lösung 1:
GNU du hat den --block-size Möglichkeit:
du -csh --block-size=1G .
Als sajb Beachten Sie, dass das Weglassen des Blockgrößenarguments die Ausgabe automatisch skaliert (und die Einheit anzeigt). Wenn Sie ein beliebiges Blockgrößenargument verwenden, wird die Zahl angezeigt, aber die Einheit wird weggelassen.
Lösung 2:
Der Einfachheit halber hier die Referenz für macOS:
-h"Von Menschen lesbare" Ausgabe. Verwenden Sie Einheiten-Suffixe:Byte, Kilobyte, Megabyte, Gigabyte, Terabyte und Petabyte.-kAnzeige der Blockanzahl in 1024-Byte-Blöcken (1 KByte).-mBlockanzahl in 1.048.576-Byte-Blöcken (1 MByte) anzeigen.-gBlockanzahl in 1.073.741.824-Byte (1-GB)-Blöcken anzeigen.
So funktionieren die verschiedenen Optionen bei einem 1,234,567 KB Datei:
$ mkfile -n 1234567k file.txt
$ du file.txt
2469136 file.txt
$ du -k file.txt
1234568 file.txt
$ du -m file.txt
1206 file.txt
$ du -g file.txt
2 file.txt
$ du -h file.txt
1.2G file.txt
Erwähnenswert ist auch, dass Sie implizites Verhalten über BLOCKSIZE konfigurieren können Umgebungsvariable:
BLOCKSIZE Wenn die Umgebungsvariable BLOCKSIZE gesetzt ist, und der -k Option nicht angegeben ist, wird die Blockanzahl in Einheiten dieser Blockgröße angezeigt. Wenn BLOCKSIZE nicht gesetzt ist und der -k Option nicht angegeben ist, werden die Blockzähler in 512 angezeigt -Byte-Blöcke.