简介

linux系统中查看文件空间大小应该是一个非常常见的命令了,今天给大家介绍linux系统中查看文件空间的两种方法和在使用中可能会遇到的奇怪问题.

为什么会有两种方法呢? 因为我们可以使用du命令来看空间的占用情况,也可以使用df来查看空间的剩余情况,就像一个硬币的正反两面,怎么用着舒服怎么来.

话不多说,开始我们今天精彩的内容吧.

du命令

查看空间大小最直接的命令就是du了, 这个命令的全称就是disk usage. 表示的是磁盘空间的占用情况.

先看下du命令的基本语法:

du [-Aclnx] [-H | -L | -P] [-g | -h | -k | -m] [-a | -s | -d depth] [-B blocksize]
[-I mask] [-t threshold] [file ...]

du命令主要用来显示文件系统的使用情况,默认情况是显示当前目录的信息,当然也可以指定具体的目录.

du的参数有很多,这里就不一一列举了,这里我们讲一下最常用的一些用法.

其中-h表示是人类可识别的读法,所以我们一般都会带上-h.

比如查看当前目录的空间使用情况可以用:

# du -ah

上面的命令显示的是目录中的所有文件.如果要将所有的文件都统计累加的话,那么可以用:

 # du -hs

如果要指定特定的目录, 直接在后面加上目录名即可.

如果你又想查看目录中具体文件的大小,又想统计总的大小,那么可以使用:

 du -ch

上面的命令会将总的大小添加在后面.

有时候我们可能发现目录占用的空间太大,但是我们又不知道具体是哪个目录,怎么办呢?

du提供了一个--max-depth=1的参数,可以指定统计目录的层级,大家可以根据需要进行调整,非常的方便.

df命令

df命令和du命令类似,但是他统计的是目录的剩余空间.

df的命令如下:

df [-b | -h | -H | -k | -m | -g | -P] [-ailn] [-t] [-T type] [file | filesystem ...]

那么df和du的统计是不是一致的呢?

大多数情况下是一样的,但是在某些情况两者的统计会出现较大的误差.

大家可能会有过这样的经历,就是一个很大的日志文件,还在源源不断的写入,如果这时候把这个日志文件删除了,会发生什么情况呢?

对于du来说是统计文件大小相加,而df是统计数据块使用情况.

在上面的例子中,虽然文件删除了,但是文件句柄并没有释放,所以du的数据显示文件已经删除了,但是df显示文件还在.直到这个打开大文件的进程被Kill掉。

可以通过下面的命令来查看文件的打开情况:

fuser -u

总结

当然,还有最简单的ls命令,也可以简单的查看文件的大小.希望大家能够喜欢.

本文已收录于 http://www.flydean.com/02-du-and-df/

最通俗的解读,最深刻的干货,最简洁的教程,众多你不知道的小技巧等你来发现!

欢迎关注我的公众号:「程序那些事」,懂技术,更懂你!

linux系列之: 你知道查看文件空间的两种方法吗?的更多相关文章

  1. 在linux环境下编译运行OpenCV程序的两种方法

    原来以为在Ubuntu下安装好了OpenCV之后,自己写个简单的程序应该很容易吧,但是呢,就是为了编译一个简单的显示图片的程序我都快被弄崩溃了. 在谷歌和上StackOverFlow查看相关问题解答之 ...

  2. linux(虚拟机中)与windows共享文件两种方法

      Windows 下用 SourceInsight 与 Linux 协作编码     习惯了用SourceInsight 读写代码,在Linux下一时没找到类似的工具,vi的操作也不熟,偶尔看看或小 ...

  3. LINUX编程学习笔记(十三) 遍历目录的两种方法

    1 默认情况下  实际用户和有效用户是一样的 实际用户:执行用户   有效用户:权限用户 getuid()  实际用户 geteuid() 有效用户 chmod u+s 之后 ,其他人执行文件时,实际 ...

  4. Linux下查看alert日志文件的两种方法

    --linux下查看alert日志文件的两种方法: --方法1: SQL> show parameter background_dump_dest; NAME TYPE VALUE ------ ...

  5. linux访问windows共享文件夹的两种方法

    有时需要在linux下需要访问windows的共享文件夹,可以使用mount挂载或者使用samba连接. 1.mount挂载 首先创建被挂载的目录: $ mkdir windows 将共享文件夹挂载到 ...

  6. (转)linux访问windows共享文件夹的两种方法

    有时需要在linux下访问window的共享文件,可以使用mount挂载或使用samba连接. 1,mount挂载 $ mkdir windows 将共享文件夹挂载到windows文件夹: mount ...

  7. Linux安装MySQL的两种方法

    转载:http://blog.csdn.net/superchanon/article/details/8546254/ 1.       运行平台:CentOS 6.3 x86_64,基本等同于RH ...

  8. linux尝试登录失败后锁定用户账户的两种方法

    linux尝试登录失败后锁定用户账户的两种方法 更新时间:2017年06月23日 08:44:31   作者:Carey    我要评论   这篇文章主要给大家分享了linux尝试登录失败后锁定用户账 ...

  9. Linux上安装Perl模块的两种方法

    Linux/Unix下安装Perl模块有两种方法:手工安装和自动安装.第一种方法是从CPAN上下载  您需要的模块,手工编译.安装.第二种方法是联上internet,使用一个叫做CPAN的模块自动完 ...

随机推荐

  1. javascript,jquery在父窗口触发子窗口(iframe)某按钮的click事件

    $('iframe').contents().find(".btn").click(); 其中 contents(): 查找匹配元素内部所有的子节点(包括文本节点).如果元素是一个 ...

  2. webpack learn1-配置项目加载各种静态资源及css预处理器2

    继续在webpack.config.js中配置loader { test:/\.css$/, use: [ 'style-loader', 'css-loader' ] },{ test:/\.(jp ...

  3. JDK1.8源码(三)——java.lang.String类

    一.概述 1.介绍 String是一个final类,不可被继承,代表不可变的字符序列,是一个类类型的变量.Java程序中的所有字符串字面量(如"abc")都作为此类的实例实现,&q ...

  4. 如何理解 jmeter 的线程数与并发数之间的关系

    https://blog.csdn.net/weixin_39955351/article/details/110548162 多个线程组的并发是如何计算的?

  5. shell 脚本获取数组字符串长度

    #!/bin/sh source /etc/init.d/functions funOne() { array=(I am dfh kjlhfjksdf sdfj jdkfhaskl mjjoldfu ...

  6. php 常用算法与函数

    1.一群猴子排成一圈,按1,2,-,n依次编号.然后从第1只开始数,数到第m只,把它踢出圈,从它后面再开始数,再数到第m只,在把它踢出去-,如此不停的进行下去,直到最后只剩下一只猴子为止,那只猴子就叫 ...

  7. english note(6.2 to 5.30)

    notes 6.2 to 5.30  http://www.51voa.com/VOA_Special_English/suicide-rates-among-young-americans-on-t ...

  8. c++ 的学习 第二集函数的重载之3 -利用IDA分析bebug里面

    1. 对项目右击,在文件资源管理器中打开文件夹 2.看debug里面的.exe     这个文件 函数的真实的名字 打开.exe文件就是还是显示,,, 3.debug模式有太多的断点信息还有许多不精简 ...

  9. 鸿蒙内核源码分析(汇编汇总篇) | 所有的汇编代码都在这里 | 百篇博客分析OpenHarmony源码 | v40.03

    百篇博客系列篇.本篇为: v40.xx 鸿蒙内核源码分析(汇编汇总篇) | 汇编可爱如邻家女孩 | 51.c.h .o 硬件架构相关篇为: v22.xx 鸿蒙内核源码分析(汇编基础篇) | CPU在哪 ...

  10. docker network 参数

    一. 格式 docker network COMMAND 二.COMMAND 讲解 2.1 .docker network connect 格式 docker network connect [OPT ...