Isso é explicado em a página do manual (grifo meu):
Lembre-se de que o tamanho é arredondado para a próxima unidade . Portanto,
-size -1M
não é equivalente a-size -1048576c
. o ex-somente corresponde a arquivos vazios, o último corresponde a arquivos de 1 a 1.048.575 bytes.
Nota: a próxima unidade . Com -1M
, um arquivo de tamanho 6.7k (~ 0.007M) é arredondado para 1M, porque a unidade em consideração é MB. Da mesma forma, com -8k
, o tamanho é arredondado para 7k, já que a unidade atual é KB, e isso está dentro dos limites.
Então, para esses comandos:
find . -size -2M
find . -size -3M
find . -size -8k
find . -size -10k
find . -size -2G
Um tamanho de 6.7k será arredondado para 1M, 1M, 7k, 7k, 1G, respectivamente.
Agora, voltando ao parágrafo citado, você vê porque -size -1x
para qualquer unidade x
sempre corresponderá apenas a arquivos vazios?