用什么linux命令能够显示一个文件目录或多个目录的体积大小?

我不是深度的使用linux的程序员,但平时又少不了使用一两次。所以,很多常用的linux命令因为不常用,所以记不住,都需要查资料寻找用法。比如,如何在linux命令行里用命令显示文件目录的体积大小。

本该记在脑袋里的技巧,记不住。还是那句老话,好记性不如烂笔头。下面就是我搜集的关于如何在linux终端里用命令显示文件目录体积的技巧。

最简单的如果要显示一个目录下的文件的体积大小,可以使用ls命令:

ls -l

这样显示的文件的体积是用B为单位的,看起来很费劲,使用-h参数,这个h代表的意思是human-readable,也就是更“人性化”的显示方式:

  1. 当文件体积大于1KB时以KB为单位
  2. 当文件体积大于1MB时以MB为单位
  3. 当文件体积大于1GB时以GB为单位

用法:

ls -lh

下面介绍显示目录体积大小的命令技巧。

du -sh file_path

这里的file_path可以是一个目录,也可以是一个文件。

当是文件名时,作用和ls -lh是一样的,显示文件的体积。

当是目录名时,显示目录的总体积。这个du命令可以跟多个目录和文件

~$ du -sh php nodejs nodejs2
256K    php
36K     nodejs
45M     nodejs2

如果跟了多个目录,他就列表显示各个目录的体积。

如果你想给这些目录的体积来个合计,使用du -csh,也就是多了个-c参数:

:~$ du -sch php nodejs nodejs2
256K    php
36K     nodejs
45M     nodejs2
45M     total

你会发现,多了一行total合计值。使用man du, 你会的它的各种参数的用法解释:

 -s, --summarize
         display only a total for each argument

  -h, --human-readable
         print sizes in human readable format (e.g., 1K 234M 2G)
  -c, --total
         produce a grand total

如果你想列出一个目录下所有目录(直接子目录,不递归显示下级目录)和文件的体积,还有一种用通配符的方法du -csh *

:~$ du -sch *
25M     node_modules
36K     nodejs
45M     nodejs2
4.0K    package.json
256K    php
24K     sqlite.db
70M     total

你会发现这些用法是十分方便的,linux系统里有很多神奇的东西,正是它们体现了linux系统的强大。

你也许感兴趣的:

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注