linux系列之: 你知道查看文件空间的两种方法吗?
简介
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系列之: 你知道查看文件空间的两种方法吗?的更多相关文章
- 在linux环境下编译运行OpenCV程序的两种方法
原来以为在Ubuntu下安装好了OpenCV之后,自己写个简单的程序应该很容易吧,但是呢,就是为了编译一个简单的显示图片的程序我都快被弄崩溃了. 在谷歌和上StackOverFlow查看相关问题解答之 ...
- linux(虚拟机中)与windows共享文件两种方法
Windows 下用 SourceInsight 与 Linux 协作编码 习惯了用SourceInsight 读写代码,在Linux下一时没找到类似的工具,vi的操作也不熟,偶尔看看或小 ...
- LINUX编程学习笔记(十三) 遍历目录的两种方法
1 默认情况下 实际用户和有效用户是一样的 实际用户:执行用户 有效用户:权限用户 getuid() 实际用户 geteuid() 有效用户 chmod u+s 之后 ,其他人执行文件时,实际 ...
- Linux下查看alert日志文件的两种方法
--linux下查看alert日志文件的两种方法: --方法1: SQL> show parameter background_dump_dest; NAME TYPE VALUE ------ ...
- linux访问windows共享文件夹的两种方法
有时需要在linux下需要访问windows的共享文件夹,可以使用mount挂载或者使用samba连接. 1.mount挂载 首先创建被挂载的目录: $ mkdir windows 将共享文件夹挂载到 ...
- (转)linux访问windows共享文件夹的两种方法
有时需要在linux下访问window的共享文件,可以使用mount挂载或使用samba连接. 1,mount挂载 $ mkdir windows 将共享文件夹挂载到windows文件夹: mount ...
- Linux安装MySQL的两种方法
转载:http://blog.csdn.net/superchanon/article/details/8546254/ 1. 运行平台:CentOS 6.3 x86_64,基本等同于RH ...
- linux尝试登录失败后锁定用户账户的两种方法
linux尝试登录失败后锁定用户账户的两种方法 更新时间:2017年06月23日 08:44:31 作者:Carey 我要评论 这篇文章主要给大家分享了linux尝试登录失败后锁定用户账 ...
- Linux上安装Perl模块的两种方法
Linux/Unix下安装Perl模块有两种方法:手工安装和自动安装.第一种方法是从CPAN上下载 您需要的模块,手工编译.安装.第二种方法是联上internet,使用一个叫做CPAN的模块自动完 ...
随机推荐
- 深入剖析 Laravel 服务容器
https://cloud.tencent.com/developer/article/1340400
- 『Python』matplotlib常用函数
1. 绘制图表组成元素的主要函数 1.1 plot()--展现量的变化趋势 import numpy as np import matplotlib.pyplot as plt import matp ...
- 华为云计算IE面试笔记-Fusionsphere架构及组件介绍(服务器虚拟化解决方案)
eDSK 最上层则是eDSK是我们FusionSphere服务器虚拟化解决方案中的虚拟化北向统一API接口,其他的第三方系统或者是其他运营平台(FC.VMware等)可以通过eDSK轻松完成无缝对 ...
- 你说要你想玩爬虫,但你说你不懂Python正则表达式,我信你个鬼,那你还不来看看?
前言 正则表达式是一个特殊的字符序列,它能帮助你方便的检查一个字符串是否与某种模式匹配. re 模块也提供了与这些方法功能完全一致的函数,这些函数使用一个模式字符串做为它们的第一个参数. re.mat ...
- Hyper-V CPU设置
前言 最近在用Hyper-V测试项目,发现在运行过程中发现项目总数崩掉,几经发现有一个共性,CPU占用率100%,分析问题发现问题出在Hyper-V CPU设置上,Hyper-V装系统就不赘述了,网上 ...
- BufferedInputStream与BufferedOutputStream的缓存底层实现
首先观察BufferedInputStream 的继承体系,可以看出他是继承自一个FilterInputStream,而这个又是继承自InputStream 我们在之前的装饰器模式就讲过,这个Buff ...
- 通用JS七
instanceof 在原型链上寻找这个属性的定义 match 正则匹配字符串 Symbol() Symbol()函数不能用作构造函数,与new关键字一起使用.这样做是为了避免创建符号包装对象,像使用 ...
- Python爬虫:通过做项目,小编了解了酷狗音乐的加密过程
1.前言 小编在这里讲一下,下面的内容仅供学习参考,切莫用于商业活动,一经被相关人员发现,本小编概不负责!读者切记切记. 2.获取音乐播放列表 其实,这就是小编要讲的重点,因为就是这部分用到了加密. ...
- 数据结构与算法——克鲁斯卡尔(Kruskal)算法
目录 应用场景-公交站问题 克鲁斯卡尔算法介绍 克鲁斯卡尔算法图解 克鲁斯卡尔算法分析 如何判断回路? 代码实现 无向图构建 克鲁斯卡尔算法实现 获取一个点的终点解释 应用场景-公交站问题 某城市新增 ...
- 跳表--怎么让一个有序链表能够进行"二分"查找?
对于一个有序数组,如果要查找其中的一个数,我们可以使用二分查找(Binary Search)算法,将它的时间复杂度降低为O(logn).那查找一个有序链表,有没有办法将其时间复杂度也降低为O(logn ...