ubuntu查看当前文件和文件夹以及下级文件夹大小

jerry ubuntu 2016年03月07日 收藏

1、du -sh 查看当前文件夹大小

du -sh * | sort -n 统计当前文件夹(目录)大小,并按文件大小排序
du -sk filename 查看指定文件大小

查看当前文件夹下文件数量

find ./201602 -type f |wc -l

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

#ls -lhs

举例比较:

# 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
# ls -lhs
总计 28G
15G -rw-r--r-- 1 root root 15G 06-04 14:35 all.txt
8.0K -rwx--x--x 1 root root 632 06-04 15:57 hash.pl

使用linux命令df 和du,df 但是df只能查看一级文件夹大小、使用比例、档案系统及其挂入点,但对文件却无能为力。du可以查看文件及文件夹的大小。所以基本上是两者配合使用。

一 df        h参数, 表示使用「Human-readable」的输出,即是输出GB、MB方式
[root@localhost /]# df -h   
Filesystem            Size  Used Avail Use% Mounted on   
/dev/sda3             262G  224G   25G  91% /   
/dev/sda1             190M   12M  169M   7% /boot   
tmpfs                 3.9G     0  3.9G   0% /dev/shm  
[root@localhost /]# df -h  
Filesystem            Size  Used Avail Use% Mounted on  
/dev/sda3             262G  224G   25G  91% /  
/dev/sda1             190M   12M  169M   7% /boot  
tmpfs                 3.9G     0  3.9G   0% /dev/shm
二 du        max-depth参数表示指定深入目录的层数,很重要,不指定的话,会显示所有层次目录

用法:du [选项]... [文件]...
 或:du [选项]... --files0-from=F
计算每个文件的磁盘用量,目录则取总用量。

长选项必须使用的参数对于短选项时也是必需使用的。
  -a, --all  输出所有文件的磁盘用量,不仅仅是目录
      --apparent-size 显示表面用量,而并非是磁盘用量;虽然表面用量通常会
   小一些,但有时它会因为稀疏文件间的"洞"、内部碎
   片、非直接引用的块等原因而变大。
  -B, --block-size=大小 使用指定字节数的块
  -b, --bytes  等于--apparent-size --block-size=1
  -c, --total  显示总计信息
  -D, --dereference-args 解除命令行中列出的符号连接
      --files0-from=F 计算文件F 中以NUL 结尾的文件名对应占用的磁盘空间
   如果F 的值是"-",则从标准输入读入文件名
  -H   等于--dereference-args (-D)
  -h, --human-readable 以可读性较好的方式显示尺寸(例如:1K 234M 2G)
      --si  类似-h,但在计算时使用1000 为基底而非1024
  -k   等于--block-size=1K
  -l, --count-links 如果是硬连接,就多次计算其尺寸
  -m   等于--block-size=1M
  -L, --dereference 找出任何符号链接指示的真正目的地
  -P, --no-dereference 不跟随任何符号链接(默认)
  -0, --null  将每个空行视作0 字节而非换行符
  -S, --separate-dirs 不包括子目录的占用量
  -s, --summarize 只分别计算命令列中每个参数所占的总用量
  -x, --one-file-system  跳过处于不同文件系统之上的目录
  -X, --exclude-from=文件 排除与指定文件中描述的模式相符的文件
      --exclude=PATTERN  排除与PATTERN 中描述的模式相符的文件
      --max-depth=N 显示目录总计(与--all 一起使用计算文件)
   当N 为指定数值时计算深度为N;
   --max-depth=0 等于--summarize
      --time  显示目录或该目录子目录下所有文件的最后修改时间
      --time=WORD 显示WORD 时间,而非修改时间:
   atime,access,use,ctime 或status
      --time-style=样式 按照指定样式显示时间(样式解释规则同"date"命令):
   full-iso,long-iso,iso,+FORMAT
      --help  显示此帮助信息并退出
      --version  显示版本信息并退出
[root@localhost /]# du -h --max-depth=1 /usr   
1.8G    /usr/share   
614M    /usr/lib   
8.0K    /usr/etc   
2.1M    /usr/kerberos   
24K     /usr/X11R6   
14G     /usr/local   
37M     /usr/libexec   
35M     /usr/sbin   
224M    /usr/include   
199M    /usr/bin   
62M     /usr/src   
8.0K    /usr/games   
727M    /usr/lib64   
17G     /usr  
[root@localhost /]# du -h --max-depth=1 /usr  
1.8G    /usr/share  
614M    /usr/lib  
8.0K    /usr/etc  
2.1M    /usr/kerberos  
24K     /usr/X11R6  
14G     /usr/local  
37M     /usr/libexec  
35M     /usr/sbin  
224M    /usr/include  
199M    /usr/bin  
62M     /usr/src  
8.0K    /usr/games  
727M    /usr/lib64  
17G     /usr

下面是相关命令的解释:

df -hl 查看磁盘剩余空间
df -h 查看每个根路径的分区大小
du -sh [目录名] 返回该目录的大小
du -sm [文件夹] 返回该文件夹总M数

更多功能可以输入一下命令查看:

df –help
du –help
查看硬盘的分区 #sudo fdisk -l
查看IDE硬盘信息 #sudo hdparm -i /dev/hda
查看STAT硬盘信息 #sudo hdparm -I /dev/sda 或 #sudo apt-get install blktool #sudo blktool /dev/sda id
查看硬盘剩余空间 #df -h #df -H
查看目录占用空间 #du -hs 目录名
优盘没法卸载 #sync fuser -km /media/usbdisk