版权声明:本文为博主原创文章,未经博主同意不得转载。 https://blog.csdn.net/hongweigg/article/details/37692057

在 Linux下,能够对某个文件或目录所占空间大小进行统计,这里将一些经常使用使用方法汇总例如以下:

1、对指定文件或目录进行统计,缺省单位为kbyte(k或千字节)。下例对目录testa进行统计:

[web@localhost ~]$ du -s testa
1589308    testa

2、对目录统计的正确做法,假设想知道某个目录所占空间的大小。用什么命令?直接用du能够吗?
能够是能够,可是。它会将该目录底下全部目录都统计一遍。显然,这不是我们想要的。正确的做法是使用 -s操作符,以下是不用-s 的结果:
[web@localhost Oracle]$ du utils
16    utils/config/10.3
172    utils/config/help/7.2.0.0/en/cw
176    utils/config/help/7.2.0.0/en
204    utils/config/help/7.2.0.0/pt_BR/cw
208    utils/config/help/7.2.0.0/pt_BR
204    utils/config/help/7.2.0.0/fr/cw
208    utils/config/help/7.2.0.0/fr
188    utils/config/help/7.2.0.0/de/cw
192    utils/config/help/7.2.0.0/de
164    utils/config/help/7.2.0.0/zh_CN/cw
168    utils/config/help/7.2.0.0/zh_CN
168    utils/config/help/7.2.0.0/zh_TW/cw
172    utils/config/help/7.2.0.0/zh_TW
176    utils/config/help/7.2.0.0/ko/cw
180    utils/config/help/7.2.0.0/ko
196    utils/config/help/7.2.0.0/es/cw
200    utils/config/help/7.2.0.0/es
192    utils/config/help/7.2.0.0/ja/cw
196    utils/config/help/7.2.0.0/ja
180    utils/config/help/7.2.0.0/it/cw
184    utils/config/help/7.2.0.0/it
1888    utils/config/help/7.2.0.0
1892    utils/config/help
1912    utils/config
8    utils/ccr/config/default
16    utils/ccr/config
3336    utils/ccr/lib
23508    utils/ccr/inventory/pending
23512    utils/ccr/inventory
180    utils/ccr/bin
16    utils/ccr/doc
27188    utils/ccr
20    utils/clone
44    utils/bsu
28    utils/quickstart/images
128    utils/quickstart
572    utils/uninstall/WebLogic_Platform_10.3.6.0
40    utils/uninstall/extftr
712    utils/uninstall
30028    utils

使用-s后:
[web@localhost Oracle]$ du -s utils
30028    utils

3、显示实际目录的大小(对实际文件大小进行统计,而不是对所占用磁盘空间进行统计)
[web@localhost Oracle]$ du --apparent-size utils
6    utils/config/10.3
103    utils/config/help/7.2.0.0/en/cw
107    utils/config/help/7.2.0.0/en
128    utils/config/help/7.2.0.0/pt_BR/cw
132    utils/config/help/7.2.0.0/pt_BR
128    utils/config/help/7.2.0.0/fr/cw
132    utils/config/help/7.2.0.0/fr
119    utils/config/help/7.2.0.0/de/cw
123    utils/config/help/7.2.0.0/de
94    utils/config/help/7.2.0.0/zh_CN/cw
98    utils/config/help/7.2.0.0/zh_CN
97    utils/config/help/7.2.0.0/zh_TW/cw
101    utils/config/help/7.2.0.0/zh_TW
111    utils/config/help/7.2.0.0/ko/cw
115    utils/config/help/7.2.0.0/ko
119    utils/config/help/7.2.0.0/es/cw
123    utils/config/help/7.2.0.0/es
124    utils/config/help/7.2.0.0/ja/cw
128    utils/config/help/7.2.0.0/ja
114    utils/config/help/7.2.0.0/it/cw
118    utils/config/help/7.2.0.0/it
1175    utils/config/help/7.2.0.0
1179    utils/config/help
1188    utils/config
5    utils/ccr/config/default
9    utils/ccr/config
3284    utils/ccr/lib
23456    utils/ccr/inventory/pending
23460    utils/ccr/inventory
153    utils/ccr/bin
16    utils/ccr/doc
27036    utils/ccr
7    utils/clone
30    utils/bsu
15    utils/quickstart/images
102    utils/quickstart
546    utils/uninstall/WebLogic_Platform_10.3.6.0
40    utils/uninstall/extftr
672    utils/uninstall
29055    utils
能够看到文件的实际大小总是比占用空间小的。

4、假设要想让结果看起来易读一点咋办?也就是我们平时口中习惯说的空间大小,也就是转换为多少G, 或多少M,或多少K,当然仅仅是一个概数。
[web@localhost ~]$ du -s -h testa
1.6G    testa

5、指定统计单位。统计单位能够是块(512byte),byte。Kbyte(千字节)等
按块统计:
[web@localhost ~]$ du -s -B 512 testa
3178616    testa

按字节进行统计
[web@localhost ~]$ du -s -B 1 testa
1627451392    testa

按K字节进行统计
[web@localhost ~]$ du -s -B 1024 testa
1589308    testa

6、统计深度,比方,我不仅想看当前目录下各个目录的大小。我还希望看到二级目录下各个目录下的大小
[web@localhost Oracle]$ du --max-depth=2
1912    ./utils/config
27188    ./utils/ccr
20    ./utils/clone
44    ./utils/bsu
128    ./utils/quickstart
712    ./utils/uninstall
30028    ./utils
21240    ./wlserver_10.3/common
4    ./wlserver_10.3/L10N
16    ./wlserver_10.3/inventory
454968    ./wlserver_10.3/server
3460    ./wlserver_10.3/sip
196    ./wlserver_10.3/uninstall
479896    ./wlserver_10.3
11936    ./coherence_3.7/lib
12    ./coherence_3.7/inventory
52    ./coherence_3.7/bin
8    ./coherence_3.7/uninstall
12024    ./coherence_3.7
228    ./modules/junit_1.0.0.0_4-5
216    ./modules/net.sf.antcontrib_1.1.0.0_1-0b2
688    ./modules/features
1852    ./modules/com.bea.weblogic.jms.dotnetclient_1.3.2.0
4164    ./modules/org.apache.ant_1.7.1
143464    ./modules
185472    ./user_projects/domains
185476    ./user_projects
24    ./logs
851044    .

也就是说对两级目录进行分别统计,当中对子目录的统计(目录内容所占空间的和),这和单独统计目录是一样的,如对
./wlserver_10.3/common 统计的结果是21240。单独统计该目录试试看:
[web@localhost Oracle]$ du -s ./wlserver_10.3/common
21240    ./wlserver_10.3/common

7、嫌结果输出行数太多?那就不换行!
[web@localhost Oracle]$ du -0 utils
16    utils/config/10.3172    utils/config/help/7.2.0.0/en/cw176    utils/config/help/7.2.0.0/en204    utils/config/help/7.2.0.0/pt_BR/cw208    utils/config/help/7.2.0.0/pt_BR204    utils/config/help/7.2.0.0/fr/cw208    utils/config/help/7.2.0.0/fr188    utils/config/help/7.2.0.0/de/cw192  
 utils/config/help/7.2.0.0/de164    utils/config/help/7.2.0.0/zh_CN/cw168    utils/config/help/7.2.0.0/zh_CN168    utils/config/help/7.2.0.0/zh_TW/cw172    utils/config/help/7.2.0.0/zh_TW176    utils/config/help/7.2.0.0/ko/cw180    utils/config/help/7.2.0.0/ko196  
 utils/config/help/7.2.0.0/es/cw200    utils/config/help/7.2.0.0/es192    utils/config/help/7.2.0.0/ja/cw196    utils/config/help/7.2.0.0/ja180    utils/config/help/7.2.0.0/it/cw184    utils/config/help/7.2.0.0/it1888    utils/config/help/7.2.0.01892    utils/config/help1912  
 utils/config8    utils/ccr/config/default16    utils/ccr/config3336    utils/ccr/lib23508    utils/ccr/inventory/pending23512   utils/ccr/inventory180    utils/ccr/bin16    utils/ccr/doc27188    utils/ccr20    utils/clone44    utils/bsu28utils/quickstart/images128  
 utils/quickstart572    utils/uninstall/WebLogic_Platform_10.3.6.040    util

8、统计时,不想将某些文件统计在内。怎么办,使用--exclude=[pattern]去掉,以下的样例中,对目录logs进行统计:
[web@localhost logs]$ ls -l
总计 20
-rw-r--r-- 1 web weblogic 1317 07-02 09:19 log.txt
-rw-r----- 1 web weblogic 1743 07-02 09:25 wlsconfig_20140702092113.log
-rw-r----- 1 web weblogic 1743 07-02 09:27 wlsconfig_20140702092546.log
-rw-r----- 1 web weblogic 1743 07-02 09:28 wlsconfig_20140702092738.log
-rw-r----- 1 web weblogic 1743 07-02 09:29 wlsconfig_20140702092819.log

能够目录中一共同拥有5个文件,每一个文件大小2K左右,看一下实际占用空间大小
[web@localhost logs]$ du -s *
4    log.txt
4    wlsconfig_20140702092113.log
4    wlsconfig_20140702092546.log
4    wlsconfig_20140702092738.log
4    wlsconfig_20140702092819.log
实际每一个所占用的空间4k左右(注意:文件占用空间和文件大小有差别)
[web@localhost logs]$ du --apparent-size *
2    log.txt
2    wlsconfig_20140702092113.log
2    wlsconfig_20140702092546.log
2    wlsconfig_20140702092738.log
2    wlsconfig_20140702092819.log
使用k字节统计大约2K左右

[web@localhost logs]$ du --apparent-size -B 1 *
1317    log.txt
1743    wlsconfig_20140702092113.log
1743    wlsconfig_20140702092546.log
1743    wlsconfig_20140702092738.log
1743    wlsconfig_20140702092819.log
使用字节统计,则和ls命令获取的文件大小结果一样

[web@localhost logs]$ cd ..
[web@localhost Oracle]$ du -s logs
24    logs

不包括txt文件后统计,大小少了4k
[web@localhost Oracle]$ du -s --exclude=*.txt logs
20    logs

9、统计符号链接,在统计某目录磁盘空间大小时。符号链接实际存储位置可能在其它分区上,缺省是不进行统计的。若要进行统计。则使用-L參数
[web@localhost logs]$ ls -l ../registry.xml
-rw-r--r-- 1 web weblogic 1908 07-02 09:19 ../registry.xml

能够看到registry.xml实际大小2K左右。创建两个符号链接:
[web@localhost logs]$ ln -s ../registry.xml ./test.xml
[web@localhost logs]$ ln -s ../registry.xml test2.xml

[web@localhost logs]$ ls -l
总计 20
-rw-r--r-- 1 web weblogic 1317 07-02 09:19 log.txt
lrwxrwxrwx 1 web weblogic   15 07-11 10:36 test2.xml -> ../registry.xml
lrwxrwxrwx 1 web weblogic   15 07-11 10:36 test.xml -> ../registry.xml
-rw-r----- 1 web weblogic 1743 07-02 09:25 wlsconfig_20140702092113.log
-rw-r----- 1 web weblogic 1743 07-02 09:27 wlsconfig_20140702092546.log
-rw-r----- 1 web weblogic 1743 07-02 09:28 wlsconfig_20140702092738.log
-rw-r----- 1 web weblogic 1743 07-02 09:29 wlsconfig_20140702092819.log

这时,能够看到统计的磁盘空间多了8k,变成了32
[web@localhost Oracle]$ du -L logs
32    logs

Linux 磁盘空间大小统计du命令常见使用方法的更多相关文章

  1. 查看Linux磁盘空间大小命令

    发表于:2012-09-17 10:25   查看Linux磁盘空间大小 一.df 命令: df 是来自于coreutils 软件包,系统安装时,就自带的:我们通过这个命令可以查看磁盘的使用情况以及文 ...

  2. 查看Linux磁盘空间大小

    一.df 命令: df 是来自于coreutils 软件包,系统安装时,就自带的:我们通过这个命令可以查看磁盘的使用情况以及文件系统被挂载的位置: 举例: [root@localhost beinan ...

  3. Linux查看磁盘空间大小命令

    Linux查看磁盘空间大小命令df -hldf -hl 查看磁盘剩余空间df -h 查看每个根路径的分区大小du -sh [目录名] 返回该目录的大小du -sm [文件夹] 返回该文件夹总M数du ...

  4. Linux磁盘空间分析及清理(df、du、rm)

    1.df磁盘空间查看 df可以查看一级文件夹大小.使用比例.档案系统及其挂入点. [root@oms ~]# df -Th Filesystem Type Size Used Avail Use% M ...

  5. Linux 查看磁盘空间大小

    (1)查看文件大小 1. 查看当前文件夹下所有文件大小(包括子文件夹)    du -sh   2.查看var目录下文件大小   du -sh var   3.查看指定文件夹下所有文件大小(包括子文件 ...

  6. Ubuntu 查看文件以及磁盘空间大小命令df

    (1)查看文件大小 查看当前文件夹下所有文件大小(包括子文件夹)    du -sh   # du -h 15M     ./package 16K     ./.fontconfig 4.0K    ...

  7. Linux下用ls和du命令查看文件以及文件夹大小

    ls的用法 ls -l |grep "^-"|wc -l或find ./company -type f | wc -l  查看某文件夹下文件的个数,包括子文件夹里的. ls -lR ...

  8. Linux查看文件以及磁盘空间大小管理(转)

    (1)查看文件大小  查看当前文件夹下所有文件大小(包括子文件夹)    du -sh   # du -h15M     ./package16K     ./.fontconfig4.0K    . ...

  9. 【Linux】查看磁盘空间大小

    Ubuntu 查看磁盘空间大小命令 df -h Df命令是linux系统以磁盘分区为单位查看文件系统,可以加上参数查看磁盘剩余空间信息, 命令格式: df -hl  显示格式为:  文件系统 容量 已 ...

随机推荐

  1. QT 窗口拖拽移动实现

    我们知道,要实现窗口移动可以直接鼠标点住窗口的标题栏实现拖拽移动,这是窗口默认的行为,在QT中的事件响应函数为moveEvent. 但是现实中经常需要鼠标点住窗口客户区域实现窗口的拖拽移动,代码实现如 ...

  2. SQLAlchemy详细教程

    http://www.360doc.com/content/15/0914/16/360939_499094891.shtml

  3. Spark Gradient-boosted trees (GBTs)梯度提升树

    梯度提升树(GBT)是决策树的集合. GBT迭代地训练决策树以便使损失函数最小化. spark.ml实现支持GBT用于二进制分类和回归,可以使用连续和分类特征. 导入包 import org.apac ...

  4. JAVA学习资源整理

    构建 这里搜集了用来构建应用程序的工具. Apache Maven:Maven使用声明进行构建并进行依赖管理,偏向于使用约定而不是配置进行构建.Maven优于Apache Ant.后者采用了一种过程化 ...

  5. LIBXML2库使用指南2

    3. 简单xml操作例子 http://blog.sina.com.cn/s/blog_4673bfa50100b0xj.html 了解以上基本知识之后,就可以进行一些简单的xml操作了.当然,还没有 ...

  6. 关于OpenJDK和Orcale JDK区别

    一.环境Centos 今天搞tomcat发现了一个问题,众所周知,tomcat需要java环境支持,然后我今天就想着尝试yum安装java,命令 yum install -y java* 确实可以安装 ...

  7. TOP100summit:【分享实录-华为】微服务场景下的性能提升最佳实践

    本篇文章内容来自2016年TOP100summit华为架构部资深架构师王启军的案例分享.编辑:Cynthia 王启军:华为架构部资深架构师.负责华为的云化.微服务架构推进落地,前后参与了华为手机祥云4 ...

  8. SQL命令中的case...when...then...else...end条件查询

    select b.XH, b.ZBXH, a.SJKSMC, a.JCRQ, a.JYRQ, a.JCJBMC, a.CYZMC,                               b.CY ...

  9. Python:导入自定义模块

    在C语言里为了工程文件的主程序main代码简洁的效果,我们经常用include“XXX”的来导入其.h文件 在Python里Import自己的自定义模块需要注意几个坑 以main主函数和需要导入的ha ...

  10. C和C指针小记(十一)-递归和迭代优化

    1.递归 C通过运行时堆栈支持递归函数的实现. 递归函数就是直接或间接调用自身的函数. 一个小例子: /** 使用递归将整型转换为ascii字符 @param value 整型数 */ void bi ...