Réponses:
GNU dua l' --block-sizeoption:
du -csh --block-size=1G .
Comme sajb l'a noté, l'omission de l'argument de taille de bloc mettra automatiquement à l'échelle la sortie (et affichera l'unité). L'utilisation de n'importe quel argument de taille de bloc affiche le nombre mais omet l'unité.
-hne pas travailler. Il s'agit d'une option prise en charge qui fait que la sortie est "lisible par l'homme" (c'est-à-dire avec des suffixes d'unité et mise à l'échelle). Mais il est vrai qu'il est ignoré lors de --block-sizeson utilisation. Cela est noté dans ma réponse.
Pour plus de commodité, voici la référence pour macOS:
-hSortie "lisible par l'homme". Utilisez les suffixes d'unité: octet, kilo-octet, mégaoctet, gigaoctet, téraoctet et pétaoctet.-k Affichage du nombre de blocs dans des blocs de 1 024 octets (1 Ko).-m Affichage du nombre de blocs dans des blocs de 1 048 576 octets (1 Mo).-g Affichage du nombre de blocs dans des blocs de 1 073 741 824 octets (1 Go).Voici comment les différentes options fonctionnent avec un 1,234,567 KBfichier:
$ 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
A noter également, vous pouvez configurer le comportement implicite via la BLOCKSIZEvariable d'environnement:
BLOCKSIZESi la variable d'environnementBLOCKSIZEest définie et que l'-koption n'est pas spécifiée, le nombre de blocs sera affiché en unités de ce bloc de taille. SiBLOCKSIZEn'est pas défini et que l'-koption n'est pas spécifiée, le nombre de blocs sera affiché en512blocs de -byte.