当磁盘大小超过标准时会有报警提示,这时如果掌握df和du命令是非常明智的选择。  df可以查看一级文件夹大小、使用比例、档案系统及其挂入点,但对文件却无能为力。

当磁盘大小超过标准时会有报警提示,这时如果掌握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 在档案系统满时,还是可以写东西到该档案系统中,以进行管理。

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

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

  提醒:一向命令比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

CentOS下查看文件和文件夹大小的更多相关文章

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

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

  2. Linux Centos下查看cpu、磁盘、内存使用情况,关闭MySQL日志

    Linux Centos下查看cpu.磁盘.内存使用情况,关闭MySQL日志 lsblk 查看分区和磁盘df -h 查看空间使用情况fdisk -l 分区工具查看分区信息cfdisk /dev/sda ...

  3. 【转载】CentOS下查看电脑硬件设备属性命令

    CentOS下查看电脑硬件设备属性命令2018年09月13日 17:48:31 乔烨 阅读数 510如何在linux下查看电脑硬件设备属性 # uname -a # 查看内核/操作系统/CPU信息 # ...

  4. CentOS下查看最后登录的用户信息以及LOG记录

    CentOS下查看最后登录的用户信息tail /var/log/messagestail /var/log/secure 我们知道,在redhat下可以用lastlog查看各用户最后登录的信息,用la ...

  5. linux/Centos下查看和修改网卡Mac地址(ifconfig命令)

    本文转载自http://www.169it.com/article/14360294838474691537.html linux/Centos下查看网卡Mac地址,输入命令: #ifconfig - ...

  6. Centos下查看和修改网卡Mac地址

    linux/Centos下查看网卡Mac地址,输入命令: #ifconfig -a eth0 Link encap:Ethernet HWaddr 00:e4:56:2E:D8:20 00:e4:56 ...

  7. centos下查看网卡,主板,CPU,显卡,硬盘型号等硬件信息

    centos下查看网卡,主板,CPU,显卡,硬盘型号等硬件信息 rose_willow rose_willow 发布于 2016/06/16 11:32 字数 902 阅读 405 收藏 0 点赞 0 ...

  8. centos下各种c++库文件的安装

    Centos编译boost   1.下载最新的boost http://www.boost.org/   2.解压文件 tar -xzvf boost_1_45_0.tar.gz    3.编译bja ...

  9. CentOS下如何查找大文件

    在Windows系统中,我们可以使用TreeSize工具查找一些大文件或文件夹,非常的方便高效,在Linux系统中,如何去搜索一些比较大的文件呢?下面我整理了一下在Linux系统中如何查找大文件或文件 ...

随机推荐

  1. Python基础之模块2

    如何导入多个模块? import re #单行导入多个模块 '''多行导入多个模块''' import re import sys import os 如何给模块起别名? import my_modu ...

  2. Babel中的stage-0,stage-1,stage-2以及stage-3

    大家知道,将ES6代码编译为ES5时,我们常用到Babel这个编译工具.大家参考一些网上的文章或者官方文档,里面常会建议大家在.babelrc中输入如下代码: { "presets" ...

  3. nginx 内置变量大全

    HTTP核心模块支持一些内置变量,变量名与apache里的对应.比如 $http_user_agent,$http_cookie等表示HTTP请求信息的变量.更多变量:$args, 请求中的参数; $ ...

  4. lua学习笔记(三)

    类型与值   lua是一种动态类型的语言,在语言中没有类型定义的语法,每个值都携带了它自身的类型信息   lua中有8种基础类型     nil       只与自身相等assert(nil==nil ...

  5. HTML5 2D平台游戏开发#8指令技

    一般在动作游戏中,玩家可以通过对输入设备输入一系列的指令让角色完成某个或多个特定的动作.以格斗游戏<拳皇>为例,键入↓↘→↘↓↙← + A or C可以触发IORI的必杀技八稚女: 通过一 ...

  6. 安卓TabHost+ViewPager+RadioGroup多功能模板整理

    如今安卓比較流行的布局就是类似新闻client和手机QQ那种的底端可选择,上面的个别页面能够滑动选择. 在測试过程中发现用安卓自带的TabHost去构建.非常难得到自己定义的效果. 因此採用TabHo ...

  7. maven 依赖文件 pom.xml 编译 mvn compile 运行 不用mvn exec:java -Dexec.mainClass="hello.HelloWorld" 打成jar包 mvn package mvn install http://blog.csdn.net/yaya1943/article/details/48464371

    使用maven编译Java项目 http://blog.csdn.net/yaya1943/article/details/48464371  使用"mvn clean"命令清除编 ...

  8. django定时任务实现(言简意赅) Django折腾记之启动定时任务(转)

    最近做一个小项目,用Django搭建的服务器,着实折腾了我一周的时间,这里一点一点记下来,以免忘记. 在这个项目中我需要用到一个每隔60s就去执行的一个函数的功能,而且需要在服务器启动时就要启动这个定 ...

  9. LNMP环境搭建(三:PHP)

    1.获取php源码 # cd /usr/local/src/ # wget http://cn2.php.net/get/php-7.0.15.tar.gz/from/this/mirror 2.解压 ...

  10. SVN流程图协作图