Tôi bối rối với đầu ra của lệnh 'du' trong Linux


21

Tôi tạo một tệp có tên file.o, tôi muốn kiểm tra kích thước của tệp file.o.

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

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

theo du -b file.o, tôi nhận biết file.o là 1120byte lớn. Nhưng tại sao du -h file.ođầu ra 4.0K (có nghĩa là 4 * 1024 byte)?

Câu trả lời:


33

Tệp nhỏ hơn, nhưng phải mất toàn bộ một khối 4.0K trên đĩa (bạn chỉ có thể có một tệp trong một khối). Nếu kích thước byte của nó là (ví dụ) 5678 Byte, nó sẽ chiếm hai khối 4.0K, tức là 8.0K.

du -b in kích thước theo byte, ghi đè kích thước khối mặc định.


10

Để thêm vào câu trả lời của eumiro, kích thước khối có thể khác nhau cho mỗi hệ thống tập tin / phân vùng.

Bạn có thể tìm kích thước khối của hệ thống tập tin bằng cách sử dụng tune2fs -l /dev/<disk> | grep '^Block size'hoặc stat -c "%o" <file on the disk>.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.