标签 文件排序 下的文章

linux之du命令详解(文件目录排序)

  • 命令简介

Linux下的du命令也是查看使用空间的,但是与df命令不同的是du命令是对文件和目录磁盘使用的大小的查看。
博主就常用这个命令配合sort命令对文件进行排序,以便查看是那些大文件占有磁盘(相信大家都会遇到过突然有一天磁盘空间就被占满了)。

  • 命令语法格式

格式:du 选项
选项即可以简单理解为跟的参数

  • 常用参数说明

参数说明:
-a或-all 为每一个指定文件显示磁盘使用情况,或者为文件夹中每一个文件显示各自磁盘使用情况。
-b或-bytes 显示文件夹或文件大小时,以byte为单位。
-c或–total 除了显示文件夹或文件的大小外,同一时候也显示全部文件夹或文件的总和。
-D或–dereference-args 显示指定符号连接的源文件大小。
-h或–human-readable 以K,M,G为单位,提高信息的可读性。
-H或–si 与-h參数同样,可是K,M,G是以1000为换算单位,而不是以1024为换算单位。
-k或–kilobytes 以1024 bytes为单位。
-l或–count-links 反复计算硬件连接的文件。
-L<符号连接>或–dereference<符号连接> 显示选项中所指定符号连接的源文件大小。
-m或–megabytes 以1MB为单位。
-s或–summarize 仅显示总计,即当前文件夹的大小。
-S或–separate-dirs 显示每一个文件夹的大小时,并不含其子文件夹的大小。
-x或–one-file-xystem 以一開始处理时的文件系统为准,若遇上其它不同的文件系统文件夹则略过。
-X<文件>或–exclude-from=<文件> 在<文件>指定文件夹或文件。
–exclude=<文件夹或文件> 略过指定的文件夹或文件。
–max-depth=<文件夹层数> 超过指定层数的文件夹后,予以忽略。
–help 显示帮助。
–version 显示版本号信息。

  • 常用方法示例

linux下du命令的几个常用方法:
1、直接输出当前目录统计总大小
du -sh
2、显示文件夹下的文件大小(默认以字节为单位输出)
du /data1/
3、以字节方式输出,参数-s
du -s /data1/
4、以兆(M)方式输出,参数-h
du -h /data1/
5、配合sort排序输出(默认会递归所有子目录,并同时显示指定目录总大小以及子目录大小)
从小到大排序:
du -h /data1/ |sort -n
从大到小排序:
du -h /data1/ |sort -rn
6、配合sort、head排序前十个输出
du -h /data1/ |sort -n| head
7、只统计当前目录下所有文件夹(默认递归统计所有子目录)
du -h --max-depth=1 /data1/ (--max-depth=n,这里=1就表示当前目录、指定目录)
20180102215734.jpg

  • 小结

这个命令呢,其实很好用的,使用管道符配合其他命令,能实现比较多的功能!博主最常用的就是排序找大文件目录!
很早的时候就用这个命令来找到了mysql的binlog日志文件(当时占用了整个磁盘的80%左右,直接爆了)!
ps:咳咳咳!既然提到了mysql日志呢,说一下:一般默认安装的mysql是没有关闭bin日志的,下次可以为大家带来如何关闭bin日志的方法!


Warning: in_array() expects parameter 2 to be array, null given in /www/users/HK1590886/WEB/usr/plugins/TopLamuLeimu/Plugin.php on line 85