Linux下查看文件大小和目录大小以及目录下文件的大小

简介:

在linux中经常会查看文件大小,通常用的命令du:

该命令详细解释如下:

[www@server101 logs]$ du --help

用法:du [选项]... [文件]...

 或:du [选项]... --files0-from=F

计算每个文件的磁盘用量,目录则取总用量。


长选项必须使用的参数对于短选项时也是必需使用的。

  -a, --all             输出所有文件的磁盘用量,不仅仅是目录

      --apparent-size   显示表面用量,而并非是磁盘用量;虽然表面用量通常会

                        小一些,但有时它会因为稀疏文件间的"洞"、内部碎

                        片、非直接引用的块等原因而变大。

  -B, --block-size=大小 使用指定字节数的块

  -b, --bytes           等于--apparent-size --block-size=1

  -c, --total           显示总计信息

  -D, --dereference-args        解除命令行中列出的符号连接

      --files0-from=F   计算文件F 中以NUL 结尾的文件名对应占用的磁盘空间

                        如果F 的值是"-",则从标准输入读入文件名

  -H                    等于--dereference-args (-D)

  -h, --human-readable  以可读性较好的方式显示尺寸(例如:1K 234M 2G)

      --si              类似-h,但在计算时使用1000 为基底而非1024

  -k                    等于--block-size=1K

  -l, --count-links     如果是硬连接,就多次计算其尺寸

  -m                    等于--block-size=1M

  -L, --dereference     找出任何符号链接指示的真正目的地

  -P, --no-dereference  不跟随任何符号链接(默认)

  -0, --null            将每个空行视作0 字节而非换行符

  -S, --separate-dirs   不包括子目录的占用量

  -s, --summarize       只分别计算命令列中每个参数所占的总用量

  -x, --one-file-system         跳过处于不同文件系统之上的目录

  -X, --exclude-from=文件       排除与指定文件中描述的模式相符的文件

      --exclude=PATTERN         排除与PATTERN 中描述的模式相符的文件

      --max-depth=N     显示目录总计(与--all 一起使用计算文件)

                        当N 为指定数值时计算深度为N;

                        --max-depth=0 等于--summarize

      --time            显示目录或该目录子目录下所有文件的最后修改时间

      --time=WORD       显示WORD 时间,而非修改时间:

                        atime,access,use,ctime 或status

      --time-style=样式 按照指定样式显示时间(样式解释规则同"date"命令):

                        full-iso,long-iso,iso,+FORMAT

      --help            显示此帮助信息并退出

      --version         显示版本信息并退出


所显示的数值是来自 --block-size、DU_BLOCK_SIZE、BLOCK_SIZE 

及 BLOCKSIZE 环境变量中第一个可用的 SIZE 单位。

否则,默认单位是 1024 字节(或是 512,若设定 POSIXLY_CORRECT 的话)。


SIZE 可以是一个可选的整数,后面跟着以下单位中的一个:

KB 1000,K 1024,MB 1000*1000,M 1024*1024,还有 G、T、P、E、Z、Y。


请向bug-coreutils@gnu.org 报告du 的错误

GNU coreutils 项目主页:<http://www.gnu.org/software/coreutils/>

GNU 软件一般性帮助:<http://www.gnu.org/gethelp/>

请向<http://translationproject.org/team/zh_CN.html> 报告du 的翻译错误

要获取完整文档,请运行:info coreutils 'du invocation'


根据以上参数,平常用的最多的就是-h和--max-depth=N,用法如下:

[www@server101 logs]$ du -h php101

4.0K    php101

[www@server101 logs]$ du -h php111

4.0K    php111

[www@server101 logs]$

如果要进一步查看,可以运用参数--max-depth=N

比如要看查看当前目录下每个目录的下一级目录(中文件)大小,此时N=2

[www@server101 logs]$ du -h --max-depth=2 ./

4.0K    ./php

4.0K    ./php101

5.5M    ./php102/activity.test.org

8.0K    ./php102/adminfw.test.org

8.0K    ./php102/admin.test.org

4.7M    ./php102/affiliate.test.org

298M    ./php102/api.pb.test.org

8.0K    ./php102/bidding.m.test.org

304M    ./php102/bidding.test.org

372K    ./php102/ck.test.org

27M     ./php102/comm-bxgxq

717M    ./php102/community.test.org

8.0K    ./php102/co.test.org

1.1M    ./php102/cost.ibs.test.org


如果要继续查看下一级目录,则N=3

[www@server101 logs]$ du -h --max-depth=3 ./

4.0K    ./php

4.0K    ./php101

5.5M    ./php102/activity.test.org/logs

5.5M    ./php102/activity.test.org

4.0K    ./php102/adminfw.test.org/logs

8.0K    ./php102/adminfw.test.org

4.0K    ./php102/admin.test.org/logs

8.0K    ./php102/admin.test.org

4.7M    ./php102/affiliate.test.org/logs

4.7M    ./php102/affiliate.test.org

298M    ./php102/api.pb.test.org/logs

298M    ./php102/api.pb.test.org

4.0K    ./php102/bidding.m.test.org/logs

8.0K    ./php102/bidding.m.test.org

304M    ./php102/bidding.test.org/logs

304M    ./php102/bidding.test.org

368K    ./php102/ck.test.org/logs

372K    ./php102/ck.test.org

27M     ./php102/comm-bxgxq/logs


依次改变N的值查看目录层级的大小。然后进入目录,运用du -ah ./查看当前目录下文件的大小

www@server101 huhoo-api]$ du -ah ./

374M    ./localhost_access_log.2016-04-27.txt

100K    ./localhost.2016-04-27.log

81M     ./catalina_112.out.2016-04-28

383M    ./localhost_access_log.2016-04-28.txt

96K     ./localhost.2016-04-28.log

26M     ./catalina_112.out.2016-04-29

174M    ./localhost_access_log.2016-04-29.txt

44K     ./localhost.2016-04-29.log

74M     ./catalina_112.out.2016-04-27

1.5M    ./localhost_access_log.2016-04-20.txt

140K    ./localhost.2016-04-20.log

79M     ./localhost_access_log.2016-04-21.txt

3.1M    ./localhost.2016-04-21.log

16K     ./catalina.2016-04-21.log

0       ./manager.2016-04-21.log

0       ./host-manager.2016-04-21.log

17M     ./catalina_112.out.2016-04-21

64M     ./catalina_112.out.2016-04-22

250M    ./localhost_access_log.2016-04-22.txt

100K    ./localhost.2016-04-22.log

77M     ./catalina_112.out.2016-04-23

345M    ./localhost_access_log.2016-04-23.txt

88K     ./localhost.2016-04-23.log

77M     ./catalina_112.out.2016-04-24

367M    ./localhost_access_log.2016-04-24.txt

92K     ./localhost.2016-04-24.log

82M     ./catalina_112.out.2016-04-25


其他参数根据解释可以依次尝试,这里只介绍--max-depth=N,这个在平常的查找哪个文件占用磁盘空间用的频率较高。



      本文转自027ryan  51CTO博客,原文链接:http://blog.51cto.com/ucode/1769003,如需转载请自行联系原作者


相关文章
|
11天前
|
Linux
linux中查看某个文件夹下文件的个数和大小
这篇文章介绍了在Linux系统中使用各种命令(如`stat`、`wc`、`du`和`ls`)来查看文件夹下文件的个数和大小的方法。
50 4
linux中查看某个文件夹下文件的个数和大小
|
6天前
|
安全 Linux 数据安全/隐私保护
探索Linux操作系统的文件权限管理
【9月更文挑战第29天】在数字世界中,文件权限管理如同保护我们隐私的锁。本文将带你了解如何在Linux系统中设置和管理文件权限,确保你的数据安全。我们将一起学习如何通过命令行工具来控制文件访问,就像学习一门新语言一样有趣。准备好了吗?让我们一起开启这场技术之旅!
|
8天前
|
Linux
深入理解Linux中的cp命令:文件与目录的复制利器
深入理解Linux中的cp命令:文件与目录的复制利器
|
8天前
|
Linux Shell
10-9|linux上统计文件中单词次数
10-9|linux上统计文件中单词次数
|
1月前
|
Linux 应用服务中间件 nginx
|
9天前
|
存储 Linux Shell
常用vim命令和vim基本使用及Linux用户的管理,用户和组相关文件
这篇文章介绍了Vim编辑器的基本使用、常用命令和模式,以及Linux系统中用户和组的管理方法,包括用户和组相关文件如/etc/passwd、/etc/shadow和/etc/group的说明。
常用vim命令和vim基本使用及Linux用户的管理,用户和组相关文件
|
8天前
|
Linux Shell Python
9-7|salt代码在linux机子那个目录
9-7|salt代码在linux机子那个目录
|
8天前
|
数据可视化 Ubuntu Linux
8-14|如何查看linux目录下文件大小
8-14|如何查看linux目录下文件大小
|
2天前
|
Linux
Linux常用命令包括
Linux常用命令包括
10 5
下一篇
无影云桌面