Мене плутають з виходом команди "du" в Linux


21

Я створюю файл з ім'ям file.o, я хочу перевірити розмір файлу file.o.

du -h file.o ====> 4.0K

du -b file.o ====> 1120

згідно du -b file.o, я знайомлюсь з file.o - це 1120 байт. Але чому du -h file.oвиводиться 4,0 К (означає 4 * 1024 байти)?

Відповіді:


33

Файл менший, але він займає один цілий 4,0K-блок на диску (у одному блоці може бути лише один файл). Якби розмір його байтів становив (наприклад) 5678 байт, він би займав два блоки 4,0 КБ, тобто 8,0 Кб.

du -b друкує розміри в байтах, змінюючи стандартний розмір блоку.


10

Щоб додати відповідь eumiro, розмір блоку може бути різним для кожної файлової системи / розділу.

Ви можете знайти розмір блоку файлової системи за допомогою tune2fs -l /dev/<disk> | grep '^Block size'або stat -c "%o" <file on the disk>.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.