ls -lh 与 du -sh * 对于目录中的文件大小

ls -lh 与 du -sh * 对于目录中的文件大小

在一个特定的目录中我有一些文件。如果我想检查文件的大小,我可以在该目录中使用命令 ls-lh 并得到以下输出:

total 61G

    -rw-r--r--+ 1   user    user    81  Dec 18  11:50:00 AM sra.o6691673
    -rw-r--r--+ 1   user    user    81  Dec 18  12:16:00 PM sra.o6691674
    -rw-r--r--+ 1   user    user    67G Dec 18  11:50:00 AM SRR531824_1.fastq
    -rw-r--r--+ 1   user    user    73G Dec 18  12:16:00 PM SRR531825_1.fastq

首先总计说61G,我有2个文件,每个文件已经是6​​7G和73G,那么总计是如何计算的?

其次我使用了命令

du -sh *

在同一目录中并得到这个结果

1.5K    sra.o6691673
1.5K    sra.o6691674
30G SRR531824_1.fastq
32G SRR531825_1.fastq

文件的实际大小是多少,我应该考虑 ls-lh 或 du -sh * 的哪些因素。

答案1

我希望这些文件在磁盘上分配的空间比它们实际使用的空间多。通常我希望只在不存储 NULL 块的二进制文件中看到这一点。由于 fastq 格式是文本,但我认为文件分配超出了数据末尾。尝试该命令ls -lsh并比较每个文件列出的两个大小。第 1 列是分配的磁盘空间量,第 6 列是已使用的磁盘空间。

相关内容