Это работает:
du -cshm .
Но это не удается
du -cshg .
Как я могу увидеть это в единицах ГБ?
У GNU du
есть --block-size
опция:
du -csh --block-size=1G .
Как отметил Сайб , пропуск аргумента размера блока автоматически масштабирует вывод (и отображает единицу измерения). При использовании любого аргумента размера блока отображается число, но не указывается единица измерения.
-h
не работаете. Это поддерживаемая опция, которая делает вывод «читаемым человеком» (т.е. с единичными суффиксами и масштабируется). Но это правда, что он игнорируется, когда--block-size
используется. Это отмечено в моем ответе.Для удобства вот ссылка на macOS:
-h
«Человекочитаемый» вывод. Используйте суффиксы единиц измерения: байт, килобайт, мегабайт, гигабайт, терабайт и петабайт.-k
Количество отображаемых блоков в блоках по 1024 байта (1 Кбайт).-m
Количество отображаемых блоков составляет 1 048 576 байт (1 мегабайт).-g
Количество отображаемых блоков составляет 1 073 741 824 байта (1 ГБ).Вот как работают различные опции для данного
1,234,567 KB
файла:Также стоит отметить, что вы можете настроить неявное поведение через
BLOCKSIZE
переменную окружения:источник
Используйте,
du -B1073741824
но будьте осторожны, это дает результат только в целочисленных единицах, и не будет иметь смысла с-h
источник
В дополнение к предыдущим ответам, это также, кажется, отличается между различными версиями coreutils (или локалью?), Так как на моем хосте я получаю:
источник