在Linux中如何查找最大的10个文件方法汇总

  

  

众所周知当系统的磁盘空间不足时,您可能会使用df, du或ncdu命令进行检查,但这些命令只会显示当前目录的文件,并不会显示整个系统范围的文件。
  

  

您得花费大量的时间才能用上述命令获取系统中最大的文件,因为要进入到每个目录重复运行上述命令。
  这种方法比较麻烦,也并不恰当。
  

  

如果是这样,那么该如何在Linux中找到最大的10个文件呢?
  

  

我在谷歌上搜索了很久,却没发现类似的文章,我反而看到了很多关于列出当前目录中最大的10个文件的文章,所以,我希望这篇文章对那些有类似需求的人有所帮助。
  

  

本教程中,我们将教您如何使用以下四种方法在Linux系统中查找最大的前10个文件。
  

  


  

  

在Linux中没有特定的命令可以直接执行此操作,因此我们需要将多个命令结合使用。
  

        #发现/类型f -print0 | xargs 0 du - h |排序rh |头10 - n      1.4克/swapfile   1.1 g/home/magi/ubuntu - 17.04 -桌面amd64.iso   564/home/magi/.gdfuse/magi/cache/0B5nso_FPaZFqTFU0XzkzUlJUZzA   378/home/magi/.gdfuse/magi/cache/0B5nso_FPaZFqeldzUmhPeC03Zm8   377/home/magi/.gdfuse/magi/cache/0B5nso_FPaZFqRGd4V0VrOXM4YVU   100/usr/lib/x86_64-linux-gnu/libOxideQtCore.so.0   93/usr/lib/firefox/libxul.so   84/var/lib/snapd/snaps/core_3604.snap   84/var/lib/snapd/snaps/core_3440.snap   84/var/lib/snapd/snaps/core_3247.snap      

<强>详解:
  

  
      <李>发现:在目录结构中搜索文件的命令李   <李>/:在整个系统(从根目录开始)中查找李   <李>类型:指定文件类型
      f:普通文件李   <李> -print0:在标准输出显示完整的文件名,其后跟一个空字符(null)   <李> |:控制操作符,将一条命令的输出传递给下一个命令以供进一步处理李   <李> xargs:将标准输入转换成命令行参数的命令李   <李> 0:以空字符(null)而不是空白字符(LCTT译者注:即空格,制表符和换行)来分割记录   <李> du - h:以可读格式计算磁盘空间使用情况的命令李   <李>:对文本文件进行排序的命令李   <李> - r:反转结果李   <李> - h:用可读格式打印输出李   <李>:输出文件开头部分的命令李   <李> n -10:打印前10个文件
      李   
  


  

  

这是查找Linux系统中最大的前10个文件的另一种方法。我们依然使用多个命令共同完成这个任务。
  

        #发现/类型f - du sh{} + |排序rh |头10 - n      1.4克/swapfile   1.1 g/home/magi/ubuntu - 17.04 -桌面amd64.iso   564/home/magi/.gdfuse/magi/cache/0B5nso_FPaZFqTFU0XzkzUlJUZzA   378/home/magi/.gdfuse/magi/cache/0B5nso_FPaZFqeldzUmhPeC03Zm8   377/home/magi/.gdfuse/magi/cache/0B5nso_FPaZFqRGd4V0VrOXM4YVU   100/usr/lib/x86_64-linux-gnu/libOxideQtCore.so.0   93/usr/lib/firefox/libxul.so   84/var/lib/snapd/snaps/core_3604.snap   84/var/lib/snapd/snaps/core_3440.snap   84/var/lib/snapd/snaps/core_3247.snap      

<强>详解:
  

  
      <李>发现:在目录结构中搜索文件的命令李   <李>/:在整个系统(从根目录开始)中查找李   <李>类型:指定文件类型
      f:普通文件李   <李> -:在所选文件上运行指定命令李   <李> du:计算文件占用的磁盘空间的命令李   <李> s:不包含子目录的大小李   <李> - h:以可读格式打印   <李>{}:递归地查找目录,统计每个文件占用的磁盘空间李   <李> |:控制操作符,将一条命令的输出传递给下一个命令以供进一步处理李   <李>:对文本文件进行按行排序的命令李   <李> - r:反转结果李   <李> - h:用可读格式打印输出李   <李>:输出文件开头部分的命令李   <李> n -10:打印前10个文件   
  


  

  

这里介绍另一种在Linux系统中搜索最大的前10个文件的方法。
  

        #发现/类型f -print0 | xargs 0 du尾巴排序- n | | -10 | - f2 | xargs - {} du sh {}      84/var/lib/snapd/snaps/core_3247.snap   84/var/lib/snapd/snaps/core_3440.snap   84/var/lib/snapd/snaps/core_3604.snap   93/usr/lib/firefox/libxul.so   100/usr/lib/x86_64-linux-gnu/libOxideQtCore.so.0   377/home/magi/.gdfuse/magi/cache/0B5nso_FPaZFqRGd4V0VrOXM4YVU   378/home/magi/.gdfuse/magi/cache/0B5nso_FPaZFqeldzUmhPeC03Zm8   564/home/magi/.gdfuse/magi/cache/0B5nso_FPaZFqTFU0XzkzUlJUZzA   1.1 g/home/magi/ubuntu - 17.04 -桌面amd64.iso   1.4克/swapfile

在Linux中如何查找最大的10个文件方法汇总