Linux下查看文件和文件夹大小

天天见闻 天天见闻 2022-02-22 科技 阅读: 1885
摘要: 当磁盘大小超过标准时会有报警提示,这时如果掌握df和du命令是非常明智的选择。df可以查看一级文件夹大小、使用比例、档案系统及其挂入点,但对文件却无能为力。du可以查看文件及文件夹的大小。比如用df查看哪个一级目录过大,然后用df查看文件夹或文件的大小,如此便可迅速确定症结。如果当前目录下文件和文件夹很多,使用不带参数du的命令,可以循环列出所有文件和文件夹所使用的空间。

当磁盘大小超过标准时会有报警提示,这时如果掌握df和du命令是非常明智的选择。

df可以查看一级文件夹大小、使用比例、档案系统及其挂入点,但对文件却无能为力。

du可以查看文件及文件夹的大小。

两者配合使用,非常有效。比如用df查看哪个一级目录过大,然后用df查看文件夹或文件的大小,如此便可迅速确定症结。

下面分别简要介绍

df命令可以显示目前所有文件系统的可用空间及使用情形,请看下列这个例子:

以下是代码片段:

[yayug@yayu ~]$ df -h

Filesystem Size Used Avail Use% Mounted on

/dev/sda1 3.9G 300M 3.4G 8% /

/dev/sda7 100G 188M 95G 1% /data0

/dev/sdb1 133G 80G 47G 64% /data1

/dev/sda6 7.8G 218M 7.2G 3% /var

/dev/sda5 7.8G 166M 7.2G 3% /tmp

/dev/sda3 9.7G 2.5G 6.8G 27% /usr

tmpfs 2.0G 0 2.0G 0% /dev/shm

参数 -h 表示使用「Human-readable」的输出,也就是在档案系统大小使用 GB、MB 等易读的格式。

上面的命令输出的第一个字段(Filesystem)及最后一个字段(Mounted on)分别是档案系统及其挂入点。我们可以看到 /dev/sda1 这个分割区被挂在根目录下。

接下来的四个字段 Size、Used、Avail、及 Use% 分别是该分割区的容量、已使用的大小、剩下的大小、及使用的百分比。 FreeBSD下,当硬盘容量已满时,您可能会看到已使用的百分比超过 100%,因为 FreeBSD 会留一些空间给 root,让 root 在档案系统满时linux 删除文件夹,还是可以写东西到该档案系统中,以进行管理。

du:查询文件或文件夹的磁盘使用空间

如果当前目录下文件和文件夹很多,使用不带参数du的命令,可以循环列出所有文件和文件夹所使用的空间。这对查看究竟是那个地方过大是不利的,所以得指定深入目录的层数,参数:--max-depth=linux 删除文件夹,这是个极为有用的参数!如下,注意使用“*”,可以得到文件的使用空间大小.

提醒:一向命令比linux复杂的FreeBSD,它的du命令指定深入目录的层数却是比linux简化,为 -d。

以下是代码片段:

[root@bsso yayu]# du -h --max-depth=1 work/testing

27M work/testing/logs

35M work/testing

[root@bsso yayu]# du -h --max-depth=1 work/testing/*

8.0K work/testing/func.php

27M work/testing/logs

8.1M work/testing/nohup.out

8.0K work/testing/testing_c.php

12K work/testing/testing_func_reg.php

8.0K work/testing/testing_get.php

8.0K work/testing/testing_g.php

8.0K work/testing/var.php

[root@bsso yayu]# du -h --max-depth=1 work/testing/logs/

27M work/testing/logs/

[root@bsso yayu]# du -h --max-depth=1 work/testing/logs/*

24K work/testing/logs/errdate.log_show.log

8.0K work/testing/logs/pertime_show.log

27M work/testing/logs/show.log

值得注意的是,看见一个针对du和df命令异同的文章:《du df 差异导致文件系统误报解决》。

du 统计文件大小相加

df 统计数据块使用情况

如果有一个进程在打开一个大文件的时候,这个大文件直接被rm 或者mv掉,则du会更新统计数值,df不会更新统计数值,还是认为空间没有释放。直到这个打开大文件的进程被Kill掉。

如此一来在定期删除 /var/spool/clientmqueue下面的文件时,如果没有杀掉其进程,那么空间一直没有释放。

使用下面的命令杀掉进程之后,系统恢复。

fuser -u /var/spool/clientmqueue

查看linux文件目录的大小和文件夹包含的文件数

统计总数大小

du -sh xmldb/

du -sm * | sort -n //统计当前目录大小 并安大小 排序

du -sk * | sort -n

du -sk * | grep guojf //看一个人的大小

du -m | cut -d "/" -f 2 //看第二个/ 字符前的文字

查看此文件夹有多少文件 /*/*/* 有多少文件

du xmldb/

du xmldb/*/*/* |wc -l

40752

解释:

wc [-lmw]

参数说明:

-l :多少行

-m:多少字符

-w:多少字

Linux:ls以K、M、G为单位查看文件大小

#man ls

……

-h, --human-readable

print sizes in human readable format (e.g., 1K 234M 2G)

……

# ls

cuss.war nohup.out

# ls -l

total 30372

-rw-r--r-- 1 root root 31051909 May 24 10:07 cuss.war

-rw------- 1 root root 0 Mar 20 13:52 nohup.out

# ls -lh

total 30M

-rw-r--r-- 1 root root 30M May 24 10:07 cuss.war

-rw------- 1 root root 0 Mar 20 13:52 nohup.out

# ll -h

total 30M

-rw-r--r-- 1 root root 30M May 24 10:07 cuss.war

-rw------- 1 root root 0 Mar 20 13:52 nohup.out

其他相关
黑客推出Linux勒索软件:可加密VMware ESXi

黑客推出Linux勒索软件:可加密VMware ESXi

作者: 天天见闻 时间:2023-09-18 阅读: 74
2023-06-30 13:20:08 作者:人宝宝 近日,一款名为Akira的勒索软件引发了业内人士的关注。据了解,该软件的主要目标是VMWare的一系列软件,并且可以对用户的虚拟机镜像进行加密,用户只有支付高额赎金,才能找回被加密的文件。 此软件在今年3月首次被发现时,主要针对Windows电脑进行攻击,但现在黑客们已经推出了Linux版本,目的是对VMware的ESXi虚拟机进行加密。与其他同类型的Linux勒索软件相比,Akira凭借其更强大的加密能力与速度,让用户难以应对。 据专业人员分析,微观原因在于Akira软件样本中存在"加密档案比例"的变量选项,可能是为了让黑客可以根据每台受感染机器的不同情况,灵活控制对应的加密速度。 值得注意的是,尽管该勒索软件的影响范围暂时并不广泛,但从被相关组织报告的数据显示,该软件仍对北美个别地区的影响较大。因此,对于这款勒索软件,相关组织和用户仍需保持警惕,不能掉以轻心。...
盘符 两个字母(盘符 linux)

盘符 两个字母(盘符 linux)

作者: 天天见闻 时间:2023-03-18 阅读: 156
电脑盘符名称?电脑盘符是DOS、WINDOWS系统对于磁盘存储设备的标识符。请输入windows所在盘符。盘符是DOS、WINDOWS系统对于 磁盘存储设备的 标识符。Win+R键运行cmd:4、detail disk 显示选择的硬盘详细信息(显示的第一行是硬盘型号?linux多少盘符:引导分区盘符什么意思。一般Windows系统放着MBR或者是GPT等主引导记录的分区。...
Linux面试题2:网络IO模型 & IO多路复用

Linux面试题2:网络IO模型 & IO多路复用

作者: 天天见闻 时间:2023-03-17 阅读: 151
当用户进程运行read任务时,内核向用户空间复制数据是否同步,IO复用实际上是一个select/poll/epoll选择器,如果一个线程同时接收多个文件描述符(fd_set),当等待并且文件描述符可以读写时接收通知的linux,处理网络IO连接时linux的优化,每次调用2.Select时,都必须将fd_set集合复制到内核状态。Poll,如果逻辑fd_set为1字节byte,则执行。...
Linux启动进程(启动linux进程)

Linux启动进程(启动linux进程)

作者: 天天见闻 时间:2023-03-17 阅读: 128
1. 开机启动时自动运行程序Linux加载后,可以使init自动启动其它程序。编辑/etc/rc.d/rc.local 文件(该文件通常是系统最后启动的脚本),2. 登录时自动运行程序用户登录时。bash先自动执行系统管理员建立的全局登录script,只需根据实际需要在上述文件中加入命令就可以实现用户登录时自动运行某些程序(类似于DOS下的Autoexec.bat)。...
linux c面试题目及答案(linux c面试题)

linux c面试题目及答案(linux c面试题)

作者: 天天见闻 时间:2023-03-16 阅读: 161
linux中内核空间及用户空间的区别?linux中系统调用过程?应用程序中read()在linux中执行过程即从用户空间到内核空间?查看驱动模块中打印信息应该使用什么命令?如何查看内核中已有的字符设备的信息?请分析chartest使用的是那一类设备驱动程序。设备驱动程序中如何注册一个字符设备?字符型驱动设备怎么创建设备文件?在具体应用上要不要先注册驱动再注册设备,内核函数mmap的实现原理。...
常见的MySQL语句

常见的MySQL语句

作者: 天天见闻 时间:2023-03-15 阅读: 141
...
我来说两句

年度爆文