ls
mostra o tamanho dos arquivos regulares (ou, no caso de diretórios, o tamanho de seus inodes, não apenas seu conteúdo, já que não tem uma maneira rápida de determinar isso, enquanto para arquivos regulares, o tamanho é conhecido e, portanto, pode ser exibido de forma exata e rápida).
Na verdade, esse campo difere dependendo do que o arquivo representa:
- para arquivos comuns: mostra o tamanho real deles
- para links simbólicos (links simbólicos,
ln -s source dest
): o comprimento do nome do link simbólico (como este é o conteúdo do arquivo simbólico). (ex: o link simbólico /dev/fd -> /proc/self/fd
: tem um caminho de destino com exatamente 13 caracteres ( / p r o c / s e l f / f d
), então ls -l
exibirá "13" na quinta coluna, em vez do tamanho do arquivo apontado.)
- para diretórios: o tamanho de um inode (se o conteúdo das entradas do diretório se encaixa em um) ou vários inodes (se houver necessidade de vários inodes para descrever a lista das entradas desse diretório). É por isso que você vê 4096 para a maioria deles: geralmente eles não têm muitos arquivos dentro deles, então eles se encaixam em 1 inode, que normalmente é 4096 bytes por padrão. Se você colocar MUITOS arquivos em algum diretório, isso aumentará (e provavelmente permanecerá ativo depois, a menos que você recrie o próprio diretório).
- para pipes e outros tipos de arquivos: cada vez que o campo normalmente associado ao tamanho pode ou não ser um tamanho (ex: para dispositivos de bloco (ex: arquivos / dev / hd *) ele não mostra tamanho mas, em vez disso, mostra seu par de informações
major, minor
. Consulte man mknod
. Consulte man ls
para ver como eles também são identificados.
Para saber a soma do conteúdo dos diretórios + subdiretores:
-
du /some/path
# será exibido para cada diretório: a soma de seu conteúdo (incluindo subdiretórios) e mostra que, para cada diretório em e abaixo de /some/path
-
du -s /some/path
# mostrará apenas 1 nível, ou seja, apenas o total de / algum / caminho
-
du -S /some/path
# mostra o conteúdo de cada diretório, não incluindo seus subdiretórios. Útil para saber exatamente quais subdiretórios de / algum / caminho são grandes.
Consulte o link para obter mais detalhes.