Saya kira Anda memasukkan satu huruf ke dalam file dengan echo a > fileatau vim file, yang berarti, Anda akan memiliki huruf itu dan baris baru tambahan di dalamnya (dua karakter, jadi dua byte). ls -lmenunjukkan ukuran file dalam byte, bukan blok (lebih spesifik: panjang file ):
$ echo a > testfile
$ ls -l testfile
-rw-r--r-- 1 user user 2 Apr 28 22:08 testfile
$ cat -A testfile
a$
(catatan yang cat -Amenampilkan baris baru sebagai $karakter)
Berbeda dengan ls -l, duakan menunjukkan ukuran sebenarnya yang ditempati pada disk:
$ du testfile
4
(sebenarnya, dumenunjukkan ukuran dalam unit 1kiB, jadi di sini ukurannya 4 × 1024 byte = 4096 byte = 4 kiB, yang merupakan ukuran blok pada sistem file ini)
Untuk lsmenunjukkan ini, Anda harus menggunakan -sopsi alih-alih / selain -l:
$ ls -ls testfile
4 -rw-r--r-- 1 user user 2 Apr 28 22:08 testfile
Kolom pertama adalah ukuran yang dialokasikan, lagi dalam satuan 1kiB. Terakhir dapat diubah dengan menentukan --block-size, mis
$ ls -ls --block-size=1 testfile
4096 -rw-r--r-- 1 aw aw 2 Apr 28 22:08 testfile