用什么linux命令能够显示一个文件目录或多个目录的体积大小?
我不是深度的使用linux的程序员,但平时又少不了使用一两次。所以,很多常用的linux命令因为不常用,所以记不住,都需要查资料寻找用法。比如,如何在linux命令行里用命令显示文件目录的体积大小。
本该记在脑袋里的技巧,记不住。还是那句老话,好记性不如烂笔头。下面就是我搜集的关于如何在linux终端里用命令显示文件目录体积的技巧。
最简单的如果要显示一个目录下的文件的体积大小,可以使用ls
命令:
ls -l
这样显示的文件的体积是用B为单位的,看起来很费劲,使用-h
参数,这个h
代表的意思是human-readable
,也就是更“人性化”的显示方式:
- 当文件体积大于1KB时以KB为单位
- 当文件体积大于1MB时以MB为单位
- 当文件体积大于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系统的强大。
阅读余下内容