find linux 目录深度_15种方法找出Linux系统中最大的N个文件,你懂几种?
请关注本头条号,每天坚持更新原创干货技术文章。
如需学习视频,请在微信搜索公众号“智传网优”直接开始自助视频学习
1. 前言
经过一段时间使用后,我们会发现Linux的可用磁盘空间越来越少,这时我们就需要准确地定位哪些文件或者哪些目录占用了空间,并且有按大小排序文件或目录的需求。
那么,如何使用Linux命令对系统文件中的目录或者文件进行统计,并查找出Linux系统上最大的文件呢?
通常我们有必要需要知道哪些文件或者目录正在吞噬着磁盘空间。更进一步来说,就是需要在文件系统中的特定目录如 /tmp, /var 或者 /home 下查找。这篇文章将帮助我们在文件系统中查找最大的文件或目录。
linux查找最大文件15个实用案例
2. linux按硬盘空间占用的大小查找文件或者目录相关的命令
这里没有简单的命令让我们在 Linux/UNIX/BSD 文件系统中找到最大的文件/目录。但我们可以通过如下的四个命令组合使用来实现:
- du命令:估计磁盘空间使用量
- sort命令:排序
- head命令:取前几条输出
- find命令:查找文件
3. linux查找最大文件和目录(文件夹)实用案例
在控制台输入如下命令找出/var/mysql目录下最大的 10 个文件和目录:
[root@zcwyou ~]# du -a /var/mysql -h | sort -n -r | head -n 10
如果需要更佳的可读性,可以执行以下命令:
[root@zcwyou ~]# cd /path/to/some/where[root@zcwyou ~]# du -hsx * | sort -rh | head -10
linux查找最大文件和目录(文件夹)实用案例
参数解释:du -h : 以人可读的格式显示 (eg. 1K, 234M, 2G)
du -s : 显示每个参数的总数。 (summary)
du -x : 排除目录
sort -r : 逆序 (reverse)
sort -h : human readable
head -10 或者 head -n 10 : 显示前 10 条。
用如下的命令找出/usr/share/zcwyou目录和其子目录下最大的文件:
[root@zcwyou ~]# find /usr/share/zcwyou -printf '%s %p'| sort -nr | head -10
找出当前目录和其子目录下最大的文件:
[root@zcwyou ~]# find . -printf '%s %p'| sort -nr | head -10
我们可以跳过某些特定目录,仅显示文件,输入:
[root@zcwyou ~]# find /path/to/search/ -type f -printf '%s %p'| sort -nr | head -10
或者
[root@zcwyou ~]# find /path/to/search/ -type f -iname "*.mp4" -printf '%s %p'| sort -nr | head -10
或者建立一个命令别名,用命令abc代替du -cks * | sort -rn | head
采用 alias
alias abc='du -cks * | sort -rn | head'
运行如下命令来获取最大的 10 个文件或目录:
[root@zcwyou ~]# abc
4. linux查找最大文件和目录(文件夹)常见应用场景
du命令的常用使用场景
使用语法
du -sh [dirname|filename]
统计并显示当前目录占用的磁盘空间大小
[root@zcwyou ~]# du -sh .
当前目录下个文件或目录的大小:
[root@zcwyou ~]# du -sh *
显示前10个占用空间最大的文件或目录:
[root@zcwyou ~]# du -s * | sort -nr | head
选项-h
以人类易读的格式显示指定目录或文件的大小
选项-s
选项指定对于目录不详细显示每个子目录或文件的大小
找到Linux磁盘或目录中最大的n个文件
du加上了-a选项,可以看到所有的目录和文件大小,按照大小排序,就可以得到最大的n个文件了:
在目录/var/zcwyou中统计文件和目录大小,使用du命令,du -k选项表示文件大小显示为KB,之后按照大小排序,显示前n行,这里n=10:
[root@zcwyou ~]# du -ak /var/zcwyou | sort -nrk 1 | head -n 10
上面的命令不但显示文件,而且显示目录,如果不想显示目录,可以先用find命令找出所有的文件,再执行上面的命令:
[root@zcwyou ~]# find /var/zcwyou -type f -exec du -k '{}' ; | sort -nrk 1 | head -n 10
下面的命令同样可以实现类似的效果:
[root@zcwyou ~]# find /var/zcwyou -type f -exec ls -l '{}' ; | awk '{print $5,$NF}' | sort -nrk 1 | head -n 10
上面的命令查找的都是目录及子目录下的文件,如果不找子目录,那就简单了,因为ls有个选项,可以按照文件大小排序,执行以下命令
[root@zcwyou ~]# ls -lhS /home/zcwyou | head -n 11
linux查找最大文件和目录(文件夹)常见应用场景
5. Linux 查找最大的文件夹
运维的时候经常遇到df -h磁盘空间快满了的情况,一般来说是由于循环日志过大导致 。
使用下面的命令,能更快地定位问题所在。
案例:查找根目录下的最大文件夹:
[root@zcwyou ~]# cd /[root@zcwyou ~]# du -sh ./* sort
Linux 查找最大的文件夹
6. 结合`find`命令找到Linux文件系统里最大的10个文件
使用方法如下:
[root@zcwyou ~]# find / -type f -print0 | xargs -0 du -h | sort -rh | head -n 10
7. linux查找最大文件或目录相关的命令应用
命令作用find搜索文件命令/在整个/目录搜索-type指定文件类型f类型为普通文件-print0标准输出完整文件名,后跟空字符(null)|管道符,前的命令给后的命令处理xargs把标准输出转换为命令行参数-0以空字符(null)来分割记录du -h查看磁盘使用情况(可读格式计算)sort文本排序-r反转结果-h打印输出(可读格式)head开头n -10打印前十
8. 总结
在Linux系统里灵活结合各种命令工具,可以非常高效地根据各种条件找到相关的文件。
find linux 目录深度_15种方法找出Linux系统中最大的N个文件,你懂几种?相关推荐
- 004 两种方法找寻路call
文章目录 关于寻路call 通过参数找寻路call CE搜索寻路目的地坐标 通过参数定位寻路call 寻路call参数分析 寻路call代码测试 寻路状态找寻路call 搜索寻路标志位 通过寻路标志位 ...
- find linux 目录深度_linux 查找目录或文件
linux 查找目录或文件 转载:http://hi.baidu.com/corylus/blog/item/911f1a0871817ad962d98686.html --------------- ...
- 5个找出Linux中“二进制命令”描述和系统中位置的方法
在数千个 Linux 系统上的命令/程序中,知道给定命令的类型和目的以及其在系统上的位置(绝对路径)对于新手来说可能是一个挑战. 知道命令/程序的一些细节不仅有助于 Linux 用户掌握大量命令,还能 ...
- 快速找出Linux服务器上不该存在恶意或后门文件
转载来源 :如何快速找出Linux服务器上不该存在恶意或后门文件 :https://www.2cto.com/article/201805/748965.html 如何快速找出Linux服务器上不该存 ...
- 如何快速找出Linux系统中的大文件?
今日主题: 如何快速找出Linux系统中的大文件? 在前面的文章中,我们讲到了压测时磁盘空间被占满的问题,可以跟今天的文章结合着看. 在性能测试中,我们经常要关注系统磁盘空间,防止因磁盘空间占满而导致 ...
- linux如何检查系统补丁,找出linux系统没有的补丁
找出linux系统没有的补丁 发布时间:2007-11-21 12:48:36来源:红联作者:Fedoraai 同学先用了一个perl程序,把ftp.kernl.org上的补丁目录读取在一个文件lis ...
- Java黑皮书课后题第7章:7.14(计算gcd)编写方法,返回个数不确定的整数的最大公约数。编写一个测试程序,提示用户输入5个数字,调用该方法找出这些数的最大公约数,并显示这个最大公约数
7.14(计算gcd)编写方法,返回个数不确定的整数的最大公约数.编写一个测试程序,提示用户输入5个数字,调用该方法找出这些数的最大公约数,并显示这个最大公约数 题目 题目描述 破题 代码 运行实例 ...
- php处理emoji表情方法,PHP实战:3种方法轻松处理php开发中emoji表情的问题
<PHP实战:3种方法轻松处理php开发中emoji表情的问题>要点: 本文介绍了PHP实战:3种方法轻松处理php开发中emoji表情的问题,希望对您有用.如果有疑问,可以联系我们. 背 ...
- Linux 系统中恢复已删除的文件
注:文章内容仅用于本人日常学习记录 Linux 系统中恢复已删除的文件 当用户意外地删除了一个仍然需要的文件时,大多数情况下,是没有简便的方法可以重新找回或重建这个文件.不过,幸运的是文件是可以通过一 ...
- linux查找最近访问的文件,教您在Linux系统中查找最近修改的文件/文件夹
如果您使用Linux系统进行日常操作,则主目录文件将随时间急剧增加.如果您有成千上万个文件,很可能不记得最近更改的文件名,本文将教您在Linux系统中查找最近修改的文件/文件夹.另外,如果要检查出于任 ...
最新文章
- 【DP】HDU 2189 悼念512汶川大地震遇难同胞——来生一起走
- matlab表达一次函数,[转载]MATLAB数据拟合例子(一次函数、指数函数、双曲线)...
- 上有天最高,自然较为小
- Spark的三种运行模式
- iOSpush过后返回多级界面
- Shiro - Shiro简介;Shiro与Spring Security区别;Spring Boot集成Shiro
- 厦门宏发有机器人_2020新版福建省厦门工业机器人工商企业公司名录名单黄页大全23家...
- java date 减去5分钟_java里让一个date每次加5分钟等于另外一个指定的date
- 计算机模拟专业委员会,中国化工学会过程模拟及仿真专业委员会成立
- Windows 环境搭建 git 服务
- 使用Python代码下载网易音乐歌曲
- 路由器选华硕还是tp_华硕路由器设置
- 韩国飞中国机票炒至近万元,一票难求
- 基于 移远 BC26 移柯BL620的NB模块调试流程
- (CodeForces) D. Kilani and the Game (搜索)
- 区块链行业如何摆脱“圈内自嗨”,真正进入大众市场?
- QT OpenGL图形放大缩小旋转移动
- 【mac m1 paddleOCR】安装环境及其坑位
- LabVIEW视觉采集软件(VAS)、视觉生成器(VB)和视觉开发模块(VDM)之间有什么不同
- java 串口 来电显示_java串口 来电显示