本文共 2738 字,大约阅读时间需要 9 分钟。
du(disk usage)命令可以计算文件或目录所占的磁盘空间。没有指定任何选项时,它会测量当前工作目录与其所有子目录,分别显示各个目录所占的快数,最后才显示工作目录所占总快数。
du [OPTION]… [FILE]…
-a, –all 包括了所有的文件,而不只是目录 –apparent-size print apparent sizes, rather than disk usage; although the apparent size is usually smaller, it may be larger due to holes in (’sparse’) files, internal fragmentation, indirect blocks, and the like -B, –block-size=SIZE use SIZE-byte blocks -b, –bytes 以字节为计算单位 -k 以千字节(KB)为计算单位 -m 以兆字节(M)为计算单位 -c, –total 最后加上一个总计(系统缺省) -D, –dereference-args dereference FILEs that are symbolic links -H 跟 – -si效果一样。 -h, –human-readable 以比较阅读的方式输出文件大小信息 (例如,1K 234M 2G)。注:该选项在很多其他命令(df, ls)中也有效。 –si 跟-h 效果一样,只是以1000为换算单位 -l, –count-links 计算所有的文件大小,对硬链接文件,则计算多次。 -L, –dereference 显示选项中所指定符号连接的源文件大小。 -P, –no-dereference 不跟随任何的符号连接(缺省) -S, –separate-dirs 计算目录所占空间时不包括子目录的大小。 -s, –summarize 只显示工作目录所占总空间 -x, –one-file-system 以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。 -X FILE, –exclude-from=FILE 排除掉指定的FILE –exclude=PATTERN 排除掉符合样式的文件,Pattern就是普通的Shell样式,?表示任何一个字符,*表示任意多个字符。 –max-depth=N 只列出深度小于max-depth的目录和文件的信息 –max-depth=0 的时候效果跟–s是 一样[weijun.hu@test0-32-227]$ pwd
[weijun.hu@test0-32-227] /home/weijun.hu/demo [weijun.hu@test0-32-227]$ ll drwxrwxr-x 4 weijun.hu weijun.hu 4096 Apr 21 16:00 auto-conf drwxrwxr-x 3 weijun.hu weijun.hu 4096 May 19 16:24 bin drwxrwxr-x 3 weijun.hu weijun.hu 4096 Apr 21 15:59 build -rwxrwxr-x 1 weijun.hu weijun.hu 2202 Apr 21 15:27 build.xml drwxrwxr-x 5 weijun.hu weijun.hu 4096 Apr 21 15:59 classes drwxrwxr-x 8 weijun.hu weijun.hu 4096 May 19 16:31 conf drwxrwxr-x 4 weijun.hu weijun.hu 4096 Apr 21 15:25 htdocs drwxrwxr-x 5 weijun.hu weijun.hu 4096 Apr 21 15:23 java drwxrwxr-x 3 weijun.hu weijun.hu 4096 Apr 21 16:07 jboss drwxrwxr-x 2 weijun.hu weijun.hu 4096 May 18 20:29 jboss-conf drwxrwxr-x 4 weijun.hu weijun.hu 4096 Apr 21 15:26 lib drwxrwxr-x 3 weijun.hu weijun.hu 4096 May 19 19:27 logs drwxrwxr-x 6 weijun.hu weijun.hu 4096 Apr 21 16:45 mail_group drwxrwxr-x 3 weijun.hu weijun.hu 4096 Apr 21 15:30 project drwxrwxr-x 9 weijun.hu weijun.hu 4096 Apr 21 15:23 sql drwxrwxr-x 3 weijun.hu weijun.hu 4096 Apr 21 16:30 synclogs drwxrwxr-x 4 weijun.hu weijun.hu 4096 Apr 21 15:27 templates [weijun.hu@test0-32-227]$ du -s 793832 .–不指定FILE名字计算出当前目录所占用的空间大小。 [weijun.hu@test0-32-227]$ du -sh 776M .–不指定FILE名字计算出当前目录所占用的空间大小。-h选项使得输出结果跟容易阅读(跟上例比较) [weijun.hu@test0-32-227]$ du – –max–depth=1 -h (注意max前是两个–)输出当前目录下各个子目录所使用的空间
83M ./java 87M ./build 197M ./jboss 128M ./lib 1.1M ./bin 52K ./synclogs 4.8M ./sql 920K ./conf 52K ./logs 20K ./mail_group 56K ./.svn 144M ./htdocs 56K ./jboss-conf 2.7M ./auto-conf 8.0K ./.mule 23M ./classes 43M ./templates 144K ./project 776M . 找出大文件 磁盘空间被耗尽的时候,免不了要清理一下,比如说/home目录太大,就可以使用下面命令看看到底是谁: du -s /home/* | sort -nr转载地址:http://htxlo.baihongyu.com/