2k
não é equivalente a 2048c
.
Para demonstração, criei arquivos nomeados correspondentes ao seu tamanho em bytes:
$ ls -l
total 36
-rw-r--r-- 1 lesmana lesmana 1000 2013-10-03 15:29 s1000
-rw-r--r-- 1 lesmana lesmana 1023 2013-10-03 15:32 s1023
-rw-r--r-- 1 lesmana lesmana 1024 2013-10-03 15:32 s1024
-rw-r--r-- 1 lesmana lesmana 1025 2013-10-03 15:32 s1025
-rw-r--r-- 1 lesmana lesmana 2000 2013-10-03 15:29 s2000
-rw-r--r-- 1 lesmana lesmana 2047 2013-10-03 15:37 s2047
-rw-r--r-- 1 lesmana lesmana 2048 2013-10-03 15:37 s2048
-rw-r--r-- 1 lesmana lesmana 2049 2013-10-03 15:37 s2049
-rw-r--r-- 1 lesmana lesmana 3000 2013-10-03 15:29 s3000
Aqui está o comando dd
que usei para criar os arquivos:
dd if=/dev/zero of=filename bs=1 count=filesizeinbytes
Observe:
$ find -size 2048c
./s2048
$ find -size 2k
./s2000
./s1025
./s2047
./s2048
e:
$ find -size 1024c
./s1024
$ find -size 1k
./s1023
./s1000
./s1024
A lógica de -size 2048c
significa que todos os arquivos com tamanho em bytes são 2048. A lógica de -size 2k
significa que todos os arquivos com tamanho arredondado para o próximo kilobyte são 2
Observe ainda mais:
$ find -size -2k
./s1023
./s1000
./s1024
$ find -size -2048c
./s2000
./s1023
./s1025
./s2047
./s1000
./s1024
A lógica de -size -2048c
é qualquer arquivo cujo tamanho em bytes seja menor que 2048. A lógica de -size -2k
é qualquer arquivo cujo tamanho arredondado para o próximo kilobyte é menor que 2.