当我这样做时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
Run Code Online (Sandbox Code Playgroud)
但“2020 年总计”是什么意思?我只有 3 个文件,所以它不是文件或目录的数量,我想也不是大小。那是什么?
Jul*_*ano 27
目录中文件使用的 1kB 块数,非递归。
使用ls -lh
有一些更有意义的输出。
Eri*_*ski 15
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
Run Code Online (Sandbox Code Playgroud)
它说'总共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
Run Code Online (Sandbox Code Playgroud)
有趣的是,一个没有任何内容的目录也占用了 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 ..
Run Code Online (Sandbox Code Playgroud)
添加一个空目录证明目录占用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
Run Code Online (Sandbox Code Playgroud)
另一个要调查的命令是du
:
el@angeliqe ~/tmpdir/emptydir $ du
4 ./blah
8 .
Run Code Online (Sandbox Code Playgroud)
此外,您可以查看特定深度的文件大小:
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 ~ $
Run Code Online (Sandbox Code Playgroud)