当前位置: 首页 > 科技观察

如何在Linux中查找Top10文件

时间:2023-03-20 19:39:37 科技观察

当系统磁盘空间不足时,您可以使用df、du或ncdu命令来查看,但这些命令只会显示当前目录的文件,而不会显示当前目录的文件。整个系统范围的文件。你必须花很多时间使用上面的命令来获取系统中的最新文件,因为你必须进入每个目录并重复运行上面的命令。这种方法比较麻烦,也不合适。如果是这样,您如何找到Linux中排名前10位的文件?google了半天没有找到类似的文章,反而看到了很多关于列出当前目录前10个文件的文章。所以,我希望这篇文章对有类似需求的人有所帮助。在本教程中,我们将教您如何使用以下四种方法查找Linux系统中排名前10的文件。方法一Linux中没有专门的命令可以直接做到这一点,所以我们需要组合使用命令。#查找/-typef-print0|xargs-0杜-h|排序-rh|head-n101.4G/swapfile1.1G/home/magi/ubuntu-17.04-desktop-amd64.iso564M/home/magi/.gdfuse/magi/cache/0B5nso_FPaZFqTFU0XzkzUlJUZzA378M/home/magi/.gdfuse/magi/cache/0B5nso_CFPaZmFqeldhome/magi/.gdfuse/magi/cache/0B5nso_FPaZFqRGd4V0VrOXM4YVU100M/usr/lib/x86_64-linux-gnu/libOxideQtCore.so.093M/usr/lib/firefox/libxul.so84M/var/lib/snapd/snaps/core_3604.snap84M/var/lib/snapd/snaps/core_3440.snap84M/var/lib/snapd/snaps/core_3247.snap详细解释:find:在一个目录结构中搜索文件的命令/:在整个系统中查找(从根目录开始)-type:指定文件类型f:普通文件-print0:在标准输出上显示完整的文件名,后跟一个空字符(null)|:控制运算符,将一个命令的输出传递给next用于进一步处理xargs:将标准输入转换为命令行参数的命令译者注:即空格、制表符和换行符)分割记录du-h:command以可读格式计算磁盘空间使用情况sort:排序文本文件的命令-r:反转结果-h:使用以可读格式打印输出head:输出文件开头的命令n-10:打印前10个文件方法2这是另一种查找Linux系统中前10个文件的方法。我们仍然使用多个命令来共同完成这个任务。#查找/-typef-execdu-Sh{}+|排序-rh|head-n101.4G/swapfile1.1G/home/magi/ubuntu-17.04-desktop-amd64.iso564M/home/magi/.gdfuse/magi/cache/0B5nso_FPaZFqTFU0XzkzUlJUZzA378M/home/magi/.gdfuse/magi/cache/0B5nso_CFPaZmPeld7/0B5nso_CFPaZmFqeldhome/magi/.gdfuse/magi/cache/0B5nso_FPaZFqRGd4V0VrOXM4YVU100M/usr/lib/x86_64-linux-gnu/libOxideQtCore.so.093M/usr/lib/firefox/libxul.so84M/var/lib/snapd/snaps/core_3604.snap84M/var/lib/snapd/snaps/core_3440.snap84M/var/lib/snapd/snaps/core_3247.snap详细解释:find:在目录结构中搜索文件的命令/:在整个系统中查找(从根目录开始)-type:指定文件类型f:普通文件-exec:对选中的文件运行指定命令du:计算文件命令占用的磁盘空间-S:不包括大小subdirectories-h:以可读格式打印{}:递归搜索目录,统计每个文件占用的磁盘空间|:控制操作符,将一个命令的输出传递给下一个comm以及进一步处理sort:逐行排序文本文件的命令-r:反向结果-h:以可读格式打印输出head:输出文件开头的命令n-10:打印前10个文件方法3这是另一种方式在Linux系统中搜索***的前10个文件。#查找/-typef-print0|xargs-0杜|排序-n|尾-10|切-f2|xargs-I{}du-sh{}84M/var/lib/snapd/snaps/core_3247.snap84M/var/lib/snapd/snaps/core_3440.snap84M/var/lib/snapd/snaps/core_3604.snap93M/usr/lib/firefox/libxul.so100M/usr/lib/x86_64-linux-gnu/libOxideQtCore。so.0377M/home/magi/.gdfuse/magi/cache/0B5nso_FPaZFqRGd4V0VrOXM4YVU378M/home/magi/.gdfuse/magi/cache/0B5nso_FPaZFqeldzUmhPeC03Zm8564M/home/magi/.gdfuse/magi/cache/0B5nso_FPaZFqTFU0XzkzUlJUZzA1.1G/home/magi/ubuntu-17.04-desktop-amd64.iso1.4G/swapfile详细解释:find:命令在目录结构中搜索文件/:在整个系统中查找(从根目录开始)-type:指定文件类型f:normalfile-print0:输出完整的文件名后跟一个空字符|:将一个命令的输出传递给下一个命令以进行进一步处理的控制运算符xargs:将标准输入转换为命令行参数的命令-0:以Splitrecordswith空字符代替空白字符du:计算文件占用磁盘空间的命令sort:逐行排序文本文件的命令-n:根据数值大小比较tail-10:输出文件结束命令(***10个文件)cut:从eac中删除特定部分的命令h行-f2:仅选择特定字段值-I{}:将初始参数中出现的每个替换字符串替换为取名-s:仅显示每个参数的总和-h:以可读格式打印输出{}:递归搜索目录,统计每个文件占用的磁盘空间方法4还有一种方法是查找Linux系统中前10个文件#查找/-typef-ls|排序-k7-r-n|头-10|列-t|awk'{print$7,$11}'1494845440/swapfile1085984380/home/magi/ubuntu-17.04-desktop-amd64.iso591003648/home/magi/.gdfuse/magi/cache/0B5nso_FPaZFqTFU0XzkzUlJUZzA395ghome/magfuse/0B5nso_FPaZFqTFU0XzkzUlJUZzA395ghome/magfuse/703/0B5nso_FPaZFqeldzUmhPeC03Zm8394891761/home/magi/.gdfuse/magi/cache/0B5nso_FPaZFqRGd4V0VrOXM4YVU103999072/usr/lib/x86_64-linux-gnu/libOxideQtCore.so.097356256/usr/lib/firefox/libxul.so87896064/var/lib/snapd/snaps/core_3604.snap87793664/var/lib/snapd/snaps/core_3440.snap87089152/var/lib/snapd/snaps/core_3247.snap详细说明:find:在目录结构中搜索文件的命令/:在整个系统(从根目录开始)-type:指定文件类型f:普通文件-ls:从标准输出开始ls-dils的格式列出当前文件|:控制运算符,将一个命令的输出传递给用于进一步处理的下一个命令排序:按行对文本文件排序的命令-k:按指定列排序-r:反转结果-n:比较accordingtonumericalsizehead:输出文件开头的命令-10:打印前10个文件column:将其输入格式化为多列的命令-t:确定输入包含的列数并创建表awk:pattern扫描和处理语言“{print$7,$11}”:仅打印指定的列