Linux-du命令使用方法

Linux-du(disk useage)命令


du 命令用于查看文件和目录占用的磁盘空间

bash 复制代码
du [选项] [文件或目录]
  1. -h (human-readable)

    将输出格式转为人类可读的形式,使用 KB、MB 等单位。

    bash 复制代码
    du -h /path/to/directory
    1.5M    /path/to/directory/subdir1
    2.3M    /path/to/directory/subdir2
    4.8M    /path/to/directory
    
  2. -s (summarize)

    仅显示指定目录或文件的总大小,而不是列出所有子目录。

    bash 复制代码
    du -sh /path/to/directory
    4.8M    /path/to/directory
    
  3. -a (all)

    显示所有文件和目录的大小,不仅仅是目录。

    bash 复制代码
    du -ah /path/to/directory
    1.0K    /path/to/directory/file1.txt
    1.5M    /path/to/directory/subdir1
    2.3M    /path/to/directory/subdir2
    4.8M    /path/to/directory
    
  4. -c (total)

    显示所有列出的文件和目录的总计。

    bash 复制代码
    du -ch /path/to/directory/*
    1.0K    /path/to/directory/file1.txt
    1.5M    /path/to/directory/subdir1
    2.3M    /path/to/directory/subdir2
    4.8M    total
    
  5. --max-depth=N

    限制输出的目录深度,N 是层级数。

    bash 复制代码
    du -h --max-depth=1 /path/to/directory

    只显示该目录下的一级子目录的大小:

    1.5M    /path/to/directory/subdir1
    2.3M    /path/to/directory/subdir2
    4.8M    /path/to/directory
    

博主在生产环境用的比较多的情况(供参考):

1. 检查 /yushifu 目录的磁盘使用情况

bash 复制代码
$ du -sh /yushifu
1.5G    /yushifu

总共占用了 1.5 GB 的空间。

2. 查看当前目录下所有文件的大小

bash 复制代码
$ du -ah .
4.0K    ./file1.txt
1.1M    ./file2.log
256K    ./folder1
2.5G    ./folder2
1.5G    ./folder2/file3.dat
1.6G    .

列出当前目录下每个文件和子目录的大小,最后一行是当前目录的总大小(1.6 GB)。

3. 查找最大的目录

bash 复制代码
$ du -h --max-depth=1 /path/to/directory | sort -hr
2.5G    ./folder2
1.1M    ./file2.log
4.0K    ./file1.txt
256K    ./folder1

列出 /path/to/directory 下的所有子目录和文件的大小,并按大小排序,folder2 是占用空间最大的目录(2.5 GB)。


相关推荐
mit6.8245 分钟前
Ubuntu 系统下性能剖析工具: perf
linux·运维·ubuntu
鹏大师运维7 分钟前
聊聊开源的虚拟化平台--PVE
linux·开源·虚拟化·虚拟机·pve·存储·nfs
watermelonoops14 分钟前
Windows安装Ubuntu,Deepin三系统启动问题(XXX has invalid signature 您需要先加载内核)
linux·运维·ubuntu·deepin
不惑_17 分钟前
小白入门 · 腾讯云轻量服务器部署 Hadoop 3.3.6
服务器·hadoop·腾讯云
阿甘知识库36 分钟前
宝塔面板跨服务器数据同步教程:双机备份零停机
android·运维·服务器·备份·同步·宝塔面板·建站
滴水之功1 小时前
VMware OpenWrt怎么桥接模式联网
linux·openwrt
ldinvicible1 小时前
How to run Flutter on an Embedded Device
linux
YRr YRr2 小时前
解决Ubuntu 20.04上编译OpenCV 3.2时遇到的stdlib.h缺失错误
linux·opencv·ubuntu
认真学习的小雅兰.2 小时前
如何在Ubuntu上利用Docker和Cpolar实现Excalidraw公网访问高效绘图——“cpolar内网穿透”
linux·ubuntu·docker
zhou周大哥2 小时前
linux 安装 ffmpeg 视频转换
linux·运维·服务器