Во-первых, вы правы. -h
флаг (если не используются для печати текста справки) используется, чтобы указать различные приложения для преобразования вывода в «человеческий читаемом формате.» Это важно ... мы вернемся к этому. В du
частности, -s
флаг дает сводку о его обычном «выводе на каталог». По сути, это складывает все вместе.
du
по умолчанию возвращает количество логических блоков, которые каталог и его содержимое занимают на носителе. Количество занятых блоков полезно для многих дисковых утилит и сценариев ... но не очень "читабельно". Флаг -h преобразует количество блоков обратно в число байтов, а затем округляет до ближайшего коэффициента 1024 (и нескольких других махинаций ... мы получаем гигабайты и одну цифру после десятичной дроби в вашем случае).
Учитывая то, что вы сказали, я готов поспорить, что ваша система настроена на размер блока 512 байт, потому что:
Важно отметить, что du
предполагается, что размер блока равен (по порядку) значению, установленному --block-size=
флагом, значению DU_BLOCK_SIZE
, BLOCK_SIZE
или BLOCKSIZE
переменным среды, или 1024
. 1024 байта - это общий размер блока по умолчанию, используемый большинством современных файловых систем. Но 512-байтовые блоки не особенно редки. Проверьте эти переменные, одна из которых, вероятно, установлена на 512. Или у вас может быть особенно старая версия du
.