zoukankan      html  css  js  c++  java
  • Linux如何查找大文件或目录总结

    Linux如何查找大文件或目录总结

    2015-04-04 11:34  潇湘隐者  阅读(125029)  评论(6)  编辑  收藏

        在Windows系统中,我们可以使用TreeSize工具查找一些大文件或文件夹,非常的方便高效,在Linux系统中,如何去搜索一些比较大的文件呢?下面我整理了一下在Linux系统中如何查找大文件或文件夹的方法。

    1: 如何查找大文件?

    其实很多时候,你需要了解当前系统下有哪些大文件,比如文件大小超过100M或1G(阀值视具体情况而定)。那么如何把这些大文件搜索出来呢?例如我要搜索当前目录下,超过800M大小的文件

    [root@getlnx01 u03]# pwd
    /u03
    [root@getlnx01 u03]# find . -type f -size +800M
    ./flash_recovery_area/backup/backupsets/ora_df873519197_s46815_s1
    ./flash_recovery_area/backup/backupsets/ora_df873523646_s46822_s1
    ./flash_recovery_area/backup/backupsets/ora_df873521714_s46818_s1
    ./flash_recovery_area/backup/backupsets/ora_df873522876_s46820_s1
    ./flash_recovery_area/backup/backupsets/ora_df873517396_s46813_s1
    ./flash_recovery_area/backup/backupsets/ora_df873523321_s46821_s1
    ./flash_recovery_area/backup/backupsets/ora_df873515765_s46811_s1
    ./flash_recovery_area/backup/backupsets/ora_df873520789_s46817_s1
    ./flash_recovery_area/backup/backupsets/ora_df873524162_s46823_s1
    ./flash_recovery_area/backup/backupsets/ora_df873518302_s46814_s1
    ./flash_recovery_area/backup/backupsets/ora_df873519953_s46816_s1
    ./flash_recovery_area/backup/backupsets/ora_df873516500_s46812_s1
    ./flash_recovery_area/backup/backupsets/ora_df873513413_s46809_s1
    ./flash_recovery_area/backup/backupsets/ora_df873514789_s46810_s1
    ./oradata/epps/invsubmat_d08.dbf
    ./oradata/epps/gmtinv_d08.dbf
    ./oradata/epps/gmtinv_x01.dbf
    ./oradata/epps/undotbs02.dbf
    ./oradata/epps/gmtinv_d07.dbf
    ./oradata/epps/undotbs01.dbf
    ./oradata/epps/gmtinv_x02.dbf

    clip_image001

    如上命令所示,我们仅仅能看到超过800M大小的文件的文件名称,但是对文件的信息(例如,文件大小、文件属性)一无所知,那么能否更详细显示一些文件属性或信息呢,当然可以,如下所示

    [root@getlnx01 u03]# find . -type f -size +800M  -print0 | xargs -0 ls -l
    -rw-r----- 1 oracle oinstall 2782846976 Mar  6 11:51 ./flash_recovery_area/backup/backupsets/ora_df873513413_s46809_s1
    -rw-r----- 1 oracle oinstall 1878433792 Mar  6 11:53 ./flash_recovery_area/backup/backupsets/ora_df873514789_s46810_s1
    -rw-r----- 1 oracle oinstall 1378492416 Mar  6 11:54 ./flash_recovery_area/backup/backupsets/ora_df873515765_s46811_s1
    -rw-r----- 1 oracle oinstall 1641381888 Mar  6 11:56 ./flash_recovery_area/backup/backupsets/ora_df873516500_s46812_s1
    -rw-r----- 1 oracle oinstall 1564065792 Mar  6 11:58 ./flash_recovery_area/backup/backupsets/ora_df873517396_s46813_s1
    -rw-r----- 1 oracle oinstall 1663492096 Mar  6 12:00 ./flash_recovery_area/backup/backupsets/ora_df873518302_s46814_s1
    -rw-r----- 1 oracle oinstall 1368244224 Mar  6 12:02 ./flash_recovery_area/backup/backupsets/ora_df873519197_s46815_s1
    -rw-r----- 1 oracle oinstall 1629069312 Mar  6 12:04 ./flash_recovery_area/backup/backupsets/ora_df873519953_s46816_s1
    -rw-r----- 1 oracle oinstall 1629954048 Mar  6 12:06 ./flash_recovery_area/backup/backupsets/ora_df873520789_s46817_s1
    -rw-r----- 1 oracle oinstall 1202192384 Mar  6 12:07 ./flash_recovery_area/backup/backupsets/ora_df873521714_s46818_s1
    -rw-r----- 1 oracle oinstall 1189388288 Mar  6 12:10 ./flash_recovery_area/backup/backupsets/ora_df873522876_s46820_s1
    -rw-r----- 1 oracle oinstall 1089257472 Mar  6 12:11 ./flash_recovery_area/backup/backupsets/ora_df873523321_s46821_s1
    -rw-r----- 1 oracle oinstall 1097687040 Mar  6 12:12 ./flash_recovery_area/backup/backupsets/ora_df873523646_s46822_s1
    -rw-r----- 1 oracle oinstall 1051009024 Mar  6 12:13 ./flash_recovery_area/backup/backupsets/ora_df873524162_s46823_s1
    -rw-r----- 1 oracle oinstall 4294975488 Apr  3 15:07 ./oradata/epps/gmtinv_d07.dbf
    -rw-r----- 1 oracle oinstall 4194312192 Apr  1 22:36 ./oradata/epps/gmtinv_d08.dbf
    -rw-r----- 1 oracle oinstall 4294975488 Apr  3 15:54 ./oradata/epps/gmtinv_x01.dbf
    -rw-r----- 1 oracle oinstall 4294975488 Apr  3 15:57 ./oradata/epps/gmtinv_x02.dbf
    -rw-r----- 1 oracle oinstall 4294975488 Apr  1 22:35 ./oradata/epps/invsubmat_d08.dbf
    -rw-r----- 1 oracle oinstall 8589942784 Apr  4 09:55 ./oradata/epps/undotbs01.dbf
    -rw-r----- 1 oracle oinstall 8589942784 Apr  4 09:15 ./oradata/epps/undotbs02.dbf

    clip_image002

    当我们只需要查找超过800M大小文件,并显示查找出来文件的具体大小,可以使用下面命令

    [root@getlnx01 u03]# find . -type f -size +800M  -print0 | xargs -0 du -h
    1.3G    ./flash_recovery_area/backup/backupsets/ora_df873519197_s46815_s1
    1.1G    ./flash_recovery_area/backup/backupsets/ora_df873523646_s46822_s1
    1.2G    ./flash_recovery_area/backup/backupsets/ora_df873521714_s46818_s1
    1.2G    ./flash_recovery_area/backup/backupsets/ora_df873522876_s46820_s1
    1.5G    ./flash_recovery_area/backup/backupsets/ora_df873517396_s46813_s1
    1.1G    ./flash_recovery_area/backup/backupsets/ora_df873523321_s46821_s1
    1.3G    ./flash_recovery_area/backup/backupsets/ora_df873515765_s46811_s1
    1.6G    ./flash_recovery_area/backup/backupsets/ora_df873520789_s46817_s1
    1004M   ./flash_recovery_area/backup/backupsets/ora_df873524162_s46823_s1
    1.6G    ./flash_recovery_area/backup/backupsets/ora_df873518302_s46814_s1
    1.6G    ./flash_recovery_area/backup/backupsets/ora_df873519953_s46816_s1
    1.6G    ./flash_recovery_area/backup/backupsets/ora_df873516500_s46812_s1
    2.6G    ./flash_recovery_area/backup/backupsets/ora_df873513413_s46809_s1
    1.8G    ./flash_recovery_area/backup/backupsets/ora_df873514789_s46810_s1
    4.1G    ./oradata/epps/invsubmat_d08.dbf
    4.0G    ./oradata/epps/gmtinv_d08.dbf
    4.1G    ./oradata/epps/gmtinv_x01.dbf
    8.1G    ./oradata/epps/undotbs02.dbf
    4.1G    ./oradata/epps/gmtinv_d07.dbf
    8.1G    ./oradata/epps/undotbs01.dbf
    4.1G    ./oradata/epps/gmtinv_x02.dbf

    clip_image003

    如果你还需要对查找结果按照文件大小做一个排序,那么可以使用下面命令

    [root@getlnx01 u03]# find . -type f -size +800M  -print0 | xargs -0 du -h | sort -nr
    1004M   ./flash_recovery_area/backup/backupsets/ora_df873524162_s46823_s1
    8.1G    ./oradata/epps/undotbs02.dbf
    8.1G    ./oradata/epps/undotbs01.dbf
    4.1G    ./oradata/epps/invsubmat_d08.dbf
    4.1G    ./oradata/epps/gmtinv_x02.dbf
    4.1G    ./oradata/epps/gmtinv_x01.dbf
    4.1G    ./oradata/epps/gmtinv_d07.dbf
    4.0G    ./oradata/epps/gmtinv_d08.dbf
    2.6G    ./flash_recovery_area/backup/backupsets/ora_df873513413_s46809_s1
    1.8G    ./flash_recovery_area/backup/backupsets/ora_df873514789_s46810_s1
    1.6G    ./flash_recovery_area/backup/backupsets/ora_df873520789_s46817_s1
    1.6G    ./flash_recovery_area/backup/backupsets/ora_df873519953_s46816_s1
    1.6G    ./flash_recovery_area/backup/backupsets/ora_df873518302_s46814_s1
    1.6G    ./flash_recovery_area/backup/backupsets/ora_df873516500_s46812_s1
    1.5G    ./flash_recovery_area/backup/backupsets/ora_df873517396_s46813_s1
    1.3G    ./flash_recovery_area/backup/backupsets/ora_df873519197_s46815_s1
    1.3G    ./flash_recovery_area/backup/backupsets/ora_df873515765_s46811_s1
    1.2G    ./flash_recovery_area/backup/backupsets/ora_df873522876_s46820_s1
    1.2G    ./flash_recovery_area/backup/backupsets/ora_df873521714_s46818_s1
    1.1G    ./flash_recovery_area/backup/backupsets/ora_df873523646_s46822_s1
    1.1G    ./flash_recovery_area/backup/backupsets/ora_df873523321_s46821_s1

    clip_image004

    不过如上截图所示,有时候排列的顺序并不完全是按大小一致,这个是因为du命令的参数h所致,你可以统一使用使用MB来显示,这样就能解决这个问题。到这里,这个在Linux系统查找大文件的命令已经非常完美了,当然如果你还有很多的需求,那么可以在这个命令上做修改、调整.

    clip_image005

    2: 如何查找Linux下的大目录

    譬如有时候磁盘空间告警了,而你平时又疏于管理、监控文件的增长,那么我需要快速的了解哪些目录变得比较大,那么此时我们可以借助du命令来帮我们解决这个问题。

    [root@getlnx01 u03]# du -h --max-depth=1
    16K     ./lost+found
    33G     ./flash_recovery_area
    37G     ./oradata
    70G     .

    如果你想知道flash_recovery_area目录下面有哪些大文件夹,那么可以将参数max-depth=2 ,如果你想对搜索出来的结果进行排序,那么可以借助于sort命令。如下所示

    [root@getlnx01 u03]# du -h --max-depth=2 | sort -n
    3.5G    ./flash_recovery_area/EPPS
    16K     ./lost+found
    29G     ./flash_recovery_area/backup
    33G     ./flash_recovery_area
    37G     ./oradata
    37G     ./oradata/epps
    70G     .
    [root@getlnx01 u03]# du -hm --max-depth=2 | sort -n
    1       ./lost+found
    3527    ./flash_recovery_area/EPPS
    29544   ./flash_recovery_area/backup
    33070   ./flash_recovery_area
    37705   ./oradata
    37705   ./oradata/epps
    70775   .

    clip_image006

    [root@getlnx01 u03]# cd /

    [root@getlnx01 /]# du -hm --max-depth=2 | sort -n

    有时候搜索出来的结果太多了(譬如,我从根目录开始搜索),一直在刷屏,如果我只想查出最大的12个文件夹,怎么办呢?此时就要借助head命令来显示了

    [root@getlnx01 /]# du -hm --max-depth=2 | sort -nr | head -12
    407480  .
    167880  ./u04
    158685  ./u02/oradata
    158685  ./u02
    152118  ./u04/oradata
    70775   ./u03
    37705   ./u03/oradata
    33070   ./u03/flash_recovery_area
    5995    ./u01/app
    5995    ./u01
    3551    ./usr
    1558    ./usr/share
    [root@getlnx01 /]# 

    clip_image007

    参考资料:

     
  • 相关阅读:
    重新想象 Windows 8 Store Apps (15) 控件 UI: 字体继承, Style, ControlTemplate, SystemResource, VisualState, VisualStateManager
    重新想象 Windows 8 Store Apps (12) 控件之 GridView 特性: 拖动项, 项尺寸可变, 分组显示
    返璞归真 asp.net mvc (10) asp.net mvc 4.0 新特性之 Web API
    与众不同 windows phone (29) Communication(通信)之与 OData 服务通信
    与众不同 windows phone (33) Communication(通信)之源特定组播 SSM(Source Specific Multicast)
    与众不同 windows phone (27) Feature(特性)之搜索的可扩展性, 程序的生命周期和页面的生命周期, 页面导航, 系统状态栏
    与众不同 windows phone (30) Communication(通信)之基于 Socket TCP 开发一个多人聊天室
    返璞归真 asp.net mvc (12) asp.net mvc 4.0 新特性之移动特性
    重新想象 Windows 8 Store Apps (2) 控件之按钮控件: Button, HyperlinkButton, RepeatButton, ToggleButton, RadioButton, CheckBox, ToggleSwitch
    重新想象 Windows 8 Store Apps (10) 控件之 ScrollViewer 特性: Chaining, Rail, Inertia, Snap, Zoom
  • 原文地址:https://www.cnblogs.com/xuanbjut/p/12783540.html
Copyright © 2011-2022 走看看