ti-enxame.com

Comando ls: o que significa a primeira linha?

Quando eu faço ls -l Eu entendi isso:

[email protected]:~/Documentos$ ls -l
total 2020
-rwxr-xr-x 1 calico calico    8559 2010-11-16 11:12 a.out
-rwxrw-rw- 1 smt    smt    2050138 2010-10-14 10:40 Java2.pdf
-rwxrw-rw- 1 ocv    ocv        234 2010-11-16 11:11 test.c

Mas o que significa "2020 total"? Eu só tenho 3 arquivos, então não é o número de arquivos ou diretórios, e acho que também não é o tamanho. Então o que é?

30
oli206

O número de blocos de 1kB sados pelos arquivos no diretório, não recursivamente.

Usar ls -lh para ter uma saída mais significativa.

25
Juliano

o que significa "total" em ls -al

Ótima pergunta, significa que você deseja prestar atenção aos detalhes. Vou ilustrar com exemplos. No meu diretório inicial /home/el existe um diretório chamado tmpdir com arquivos abaixo dele. Eu mudo para esse diretório e faço ls -al

[email protected] ~/tmpdir $ ls -al
total 20
drwxrwxr-x 4 el users 4096 Dec 21 11:45 .
drwx--x--x 9 el users 4096 Dec 21 11:45 ..
drwxrwxr-x 2 el users 4096 Dec 21 11:45 dirWithFiles
drwxrwxr-x 2 el users 4096 Dec 21 11:44 emptydir
-rw-rw-r-- 1 el users  182 Dec 21 11:45 myfile.txt

Diz 'total 20'. Isso se traduz em: "tmpdir usa 20K de espaço em disco para todos os diretórios e arquivos".

com a opção -h, você diz para entregá-lo a você em forma legível por humanos:

[email protected] ~/tmpdir $ ls -alh
total 20K
drwxrwxr-x 4 el users 4.0K Dec 21 11:45 .
drwx--x--x 9 el users 4.0K Dec 21 11:45 ..
drwxrwxr-x 2 el users 4.0K Dec 21 11:45 dirWithFiles
drwxrwxr-x 2 el users 4.0K Dec 21 11:44 emptydir
-rw-rw-r-- 1 el users  182 Dec 21 11:45 myfile.txt

É interessante notar que um diretório sem nada nele também ocupa 8K de espaço, no meu caso emptydir não tem nada nele, mas mostra como usando 8K

[email protected] ~/tmpdir/emptydir $ ls -al
total 8
drwxrwxr-x 2 el users 4096 Dec 21 11:44 .
drwxrwxr-x 4 el users 4096 Dec 21 11:45 ..

Adicionar um diretório vazio prova que os diretórios ocupam 4 K:

[email protected] ~/tmpdir/emptydir $ ls -alh
total 12K
drwxrwxr-x 3 el users 4.0K Dec 21 11:54 .
drwxrwxr-x 4 el users 4.0K Dec 21 11:45 ..
drwxrwxr-x 2 el users 4.0K Dec 21 11:54 blah

Outro comando para investigar é du:

[email protected] ~/tmpdir/emptydir $ du
4       ./blah
8       .

Além disso, você pode observar os tamanhos dos arquivos em uma determinada profundidade:

[email protected] ~ $ du -h --max-depth=1
12K     ./.ssh
4.0K    ./my_recycle_bin
8.0K    ./.vim
13G     ./gnuoctbluehost
24K     ./tmpdir
48K     ./.Subversion
152K    ./.cpan
13G     .
[email protected] ~ $
14
Eric Leschinski

Ninguém mencionou sobre -s opção (?). De man ls:

-s, --size print the allocated size of each file, in blocks

.. então, se você listar com ls -s então você obterá o número de blocos para cada diretório e arquivo no diretório atual. Ao resumir, obterá exatamente o mesmo número de total: você vê no topo de ls -l.

Extra: Para obter a verificação do tamanho do bloco this .

5
sobi3ch