Je suppose que vous avez cette lettre dans le fichier avec echo a > fileou vim file, ce qui signifie que vous aurez cette lettre et un retour à la ligne supplémentaire (deux caractères, donc deux octets). ls -laffiche la taille du fichier en octets, pas en blocs (pour être plus précis: longueur du fichier ):
$ echo a > testfile
$ ls -l testfile
-rw-r--r-- 1 user user 2 Apr 28 22:08 testfile
$ cat -A testfile
a$
(notez que cat -Ales sauts de ligne s'affichent sous forme de $caractère)
Contrairement à ls -l, duaffichera la taille réelle occupée sur le disque:
$ du testfile
4
(en fait, duaffiche la taille en unités de 1 Ko, donc ici, la taille est de 4 × 1024 octets = 4096 octets = 4 Ko, ce qui correspond à la taille de bloc sur ce système de fichiers)
Pour avoir lscela, vous devrez utiliser l' -soption au lieu de / en plus de -l:
$ ls -ls testfile
4 -rw-r--r-- 1 user user 2 Apr 28 22:08 testfile
La première colonne est la taille allouée, toujours en unités de 1 ko. La dernière peut être modifiée en spécifiant --block-size, par exemple
$ ls -ls --block-size=1 testfile
4096 -rw-r--r-- 1 aw aw 2 Apr 28 22:08 testfile