Linux 系统中的一个目录可以容纳从几个文件到成百上千个文件。您可能需要按大小对文件进行排序,无论是升序还是降序。按大小排序文件的原因可能会有所不同。我们可能想要定位最大到最小的文件,反之亦然。您可以使用 ls 命令轻松地对文件进行排序。在本教程中,我们将介绍使用 ls 命令按大小对文件进行排序的各种方法。在我们的示例中,我们将在 /var/cache/apt/archives 目录进行。
先决条件
- 访问 Linux 机器。
- 最好充当 非 root sudo 用户以确保安全的环境
列出文件
要在 Linux 中列出文件,我们通常使用ls命令。ls 是 list 的缩写,可以不带任何参数使用:
ls
执行此命令时,将列出当前目录中的文件。
我们还可以使用-l参数来生成文件和目录的长列表:
ls -l
-l 参数提供了几个细节。
根据文件大小对文件进行排序
到目前为止,这很简单。默认情况下,ls命令按字母顺序对文件进行排序。
按降序对文件进行排序(-S 参数)
要让 ls 按大小对文件进行排序,我们可以使用-S参数,该参数默认按降序对文件进行排序。
ls -lS
或者,您可以通过将-S替换为–sort参数来获得相同的结果,并且您将获得相同的输出。为此,我们需要执行以下命令:
ls -l --sort=size
按升序对文件进行排序(-Sr 参数)
如果我们需要按文件大小升序对文件进行排序怎么办——这与我们上面所做的相反。我们可以通过在-S参数中添加-r作为参数来做到这一点,这基本上只会以反向降序(即升序)列出文件。这次输出是按升序生成的。
和前面一样,我们也可以使用 –sort 参数。我们将只添加-r并且文件将以相反的顺序列出。
ls -lr --sort=size
以易于理解的格式按大小对文件进行排序
除了根据字节大小列出文件外,我们还可以使用-h参数使文件大小更易于阅读。人们更容易理解以兆字节或千兆字节为单位的文件大小,而不是长数字格式,例如 10956。让我们尝试列出文件,按升序对它们进行排序(-Sr),并且还使用-h参数。
ls -lSrh
现在文件按其大小升序排序,但采用易于理解的格式。在此命令中,我们生成文件和目录的列表,按文件大小升序排序,然后将字节转换为更易于阅读的格式,如千字节。在输出中,文件大小现在被列为 11K,而不是像 2088 或 8212 这样的字节大小。
结论
OK。希望本教程可以帮助您在 Linux 中使用 ls 命令根据文件大小对文件进行排序。如果我们遇到任何问题,请随时发表评论或 联系我们,我们会尽快回复我们。