当我这样做时,ls -l
我得到这个:
calico@A000505:~/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
但“2020年总计”是什么意思呢?我只有 3 个文件,所以它不是文件或目录的数量,我想它也不是大小。那么它是什么?
答案1
1kB块的数量用过的通过目录中的文件,非递归地。
用于ls -lh
获得一些更有意义的输出。
答案2
ls -al 中的“总计”是什么意思
很好的问题,这意味着你想要关注细节。我将用例子来说明。在我的主目录下/home/el
有一个名为 tmpdir 的目录,其下有文件。我切换到该目录并执行ls -al
el@angeliqe ~/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
上面写着“总共20个”。这意味着:“tmpdir 使用磁盘上的 20K 空间来存储所有目录和文件”。
使用 -h 选项,您可以告诉它以人类可读的形式将其提供给您:
el@angeliqe ~/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
有趣的是,一个没有任何内容的目录也占用 8K 空间,在我的例子中,emptydir
它没有任何内容,但显示为使用 8K
el@angeliqe ~/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 ..
添加一个空目录证明目录占用4K:
el@angeliqe ~/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
另一个要调查的命令是du
:
el@angeliqe ~/tmpdir/emptydir $ du
4 ./blah
8 .
此外,您还可以查看一定深度的文件大小:
el@angeliqe ~ $ du -h --max-depth=1
12K ./.ssh
4.0K ./my_recycle_bin
8.0K ./.vim
13G ./gnuoctbluehost
24K ./tmpdir
48K ./.subversion
152K ./.cpan
13G .
el@angeliqe ~ $
答案3
没有人提到-s
选项(?)。从man ls
:
-s, --size print the allocated size of each file, in blocks
..因此,如果您列出,ls -s
那么您将获得当前目录中每个目录和文件的块数。当您总结它时,您将得到与total:
您在 顶部看到的数字完全相同的数字ls -l
。
额外:获取块大小检查这。