du
-h --max-depth=1 |grep [TG] |sort #查找上G和T的目錄並排序du
-sh #統計當前目錄的大小,以直觀方式展現du
-h --max-depth=1 |grep 'G' |sort #查看上G目錄並排序du
-sh --max-depth=1 #查看當前目錄下所有一級子目錄文件夾大小du
-h --max-depth=1 |sort #查看當前目錄下所有一級子目錄文件夾大小 並排序du
-h --max-depth=1 |grep [TG] |sort -nr #倒序排FreeBSD下是這樣的du
-hd 1 | sortdu
-hd 1 |grep [GT] | sortdu命令功能說明:統計目錄(或文件)所占磁盤空間的大小。語 法:du
[-abcDhHklmsSx]
[-L <符號連接>][-X
<文件>][--block-size][--exclude=<目錄或文件>]
[--max-depth=<目錄層數>][--help][--version][目錄或文件]常用參數:-a或-all
為每個指定文件顯示磁盤使用情況,或者為目錄中每個文件顯示各自磁盤使用情況。-b或-bytes
顯示目錄或文件大小時,以byte為單位。-c或–total
除了顯示目錄或文件的大小外,同時也顯示所有目錄或文件的總和。-D或–dereference-args
顯示指定符號連接的源文件大小。-h或–human-readable
以K,M,G為單位,提高信息的可讀性。-H或–si
與-h參數相同,但是K,M,G是以1000為換算單位,而不是以1024為換算單位。-k或–kilobytes
以1024 bytes為單位。-l或–count-links
重復計算硬件連接的文件。-L<符號連接>或–dereference<符號連接>
顯示選項中所指定符號連接的源文件大小。-m或–megabytes
以1MB為單位。-s或–summarize
僅顯示總計,即當前目錄的大小。-S或–separate-dirs
顯示每個目錄的大小時,並不含其子目錄的大小。-x或–one-file-xystem
以一開始處理時的文件系統為准,若遇上其它不同的文件系統目錄則略過。-X<文件>或–exclude-from=<文件>
在<文件>指定目錄或文件。–exclude=<目錄或文件>
略過指定的目錄或文件。–max-depth=<目錄層數>
超過指定層數的目錄後,予以忽略。–help
顯示幫助。–version
顯示版本信息。linux中的du命令使用示例:1>
要顯示一個目錄樹及其每個子樹的磁盤使用情況du
/home/linux這在/home/linux目錄及其每個子目錄中顯示了磁盤塊數。2>
要通過以1024字節為單位顯示一個目錄樹及其每個子樹的磁盤使用情況du
-k /home/linux這在/home/linux目錄及其每個子目錄中顯示了
1024 字節磁盤塊數。3>
以MB為單位顯示一個目錄樹及其每個子樹的磁盤使用情況du
-m /home/linux這在/home/linux目錄及其每個子目錄中顯示了
MB 磁盤塊數。4>
以GB為單位顯示一個目錄樹及其每個子樹的磁盤使用情況du
-g /home/linux這在/home/linux目錄及其每個子目錄中顯示了
GB 磁盤塊數。5>查看當前目錄下所有目錄以及子目錄的大小:du
-h .“.”代表當前目錄下。也可以換成一個明確的路徑-h表示用K、M、G的人性化形式顯示6>查看當前目錄下user目錄的大小,並不想看其他目錄以及其子目錄:du
-sh user-s表示總結的意思,即只列出一個總結的值du
-h –max-depth=0 user–max-depth=n表示只深入到第n層目錄,此處設置為0,即表示不深入到子目錄。7>列出user目錄及其子目錄下所有目錄和文件的大小:du
-ah user-a表示包括目錄和文件8>列出當前目錄中的目錄名不包括xyz字符串的目錄的大小:du
-h –exclude=’*xyz*’9>想在一個屏幕下列出更多的關於user目錄及子目錄大小的信息:du
-0h user-0(槓零)表示每列出一個目錄的信息,不換行,而是直接輸出下一個目錄的信息。10>只顯示一個目錄樹的全部磁盤使用情況[maple@linux
~]$[maple@linux
~]$ du8
./test/links8
./test/dir/subdir18
./test/dir/subdir220
./test/dir160
./test108
./test21492
.[maple@linux
~]$[maple@linux
~]$ du -08
./test/links8 ./test/dir/subdir18 ./test/dir/subdir220 ./test/dir160 ./test108 ./test21492 .[maple@linux ~]$ du -c8
./test/links8
./test/dir/subdir18
./test/dir/subdir220
./test/dir160
./test108
./test21492
.1492
total[maple@linux
~]$[maple@linux
~]$ du -h8.0K
./test/links8.0K
./test/dir/subdir18.0K
./test/dir/subdir220K
./test/dir160K
./test108K
./test21.5M
.[maple@linux
~]$[maple@linux
~]$ du -k8
./test/links8
./test/dir/subdir18
./test/dir/subdir220
./test/dir160
./test108
./test21492
.[maple@linux
~]$[maple@linux
~]$ du -sh1.5M
.[maple@linux
~]$[maple@linux
~]$ du -S8
./test/links8
./test/dir/subdir18
./test/dir/subdir24
./test/dir132
./test108
./test21224
.[maple@linux
~]$[maple@linux
~]$ du -Sh --exclude="sub*"8.0K
./test/links4.0K
./test/dir132K
./test108K
./test21.2M
.[maple@linux
~]$[maple@linux
~]$ du -h8.0K
./test/links8.0K
./test/dir/subdir18.0K
./test/dir/subdir220K
./test/dir160K
./test108K
./test21.5M
.[maple@linux
~]$命令用途du(disk
usage)命令可以計算文件或目錄所占的磁盤空間。沒有指定任何選項時,它會測量當前工作目錄與其所有子目錄,分別顯示各個目錄所占的快數,最後才顯示工作目錄所占總快數。命令格式du
[OPTION]… [FILE]…-a,
–all包括了所有的文件,而不只是目錄–apparent-sizeprint
apparent sizes, rather than disk usage; although the apparent size is usually smaller, it may be larger dueto
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-argsdereference
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是 一樣使用案例root@ubuntu:/#
cd /home/web/root@ubuntu:/home/web#
du -s793832
.–不指定FILE名字計算出當前目錄所占用的空間大小。root@ubuntu:/#$
du -sh776M
.–不指定FILE名字計算出當前目錄所占用的空間大小。-h選項使得輸出結果跟容易閱讀(跟上例比較)root@ubuntu:/#$
du –max-depth=1 -h–輸出當前目錄下各個子目錄所使用的空間83M
./java87M
./build197M
./jboss128M
./lib1.1M
./bin52K
./synclogs4.8M
./sql920K
./conf52K
./logs20K
./mail_group56K
./.svn144M
./htdocs56K
./jboss-conf2.7M
./auto-conf8.0K
./.mule23M
./classes43M
./templates144K
./project776M
.找出大文件磁盤空間被耗盡的時候,免不了要清理一下,比如說/home目錄太大,就可以使用下面命令看看到底是誰:du
-s /home/* | sort -nr[root@SVN
svnhome]# du -h --max-depth=1 |grep [TG] |sort -nr518G
./sichuandian474G
./zgx162G
./20kc98G
./bgong80G
./s73G
./yn44G
./siua1235G
./cdtielug1331G
./kifa22G
./zhhu22G
./shae118G
./eCaker17G
./1-youswu16G
./20kc14G
./sicngda14G
./be116.5G
./service5.4G
./YNmeeting5.2G
./YNkangjia5.0G
./1-1hongqinshan4.6G
./doucaiku4.6G
./bunopertion3.7G
./naax112.6G
./yneries2.6G
./teamals2.4G
./sichxue2.4G
./1cm1.8G
./Yb1.7T
.1.7G
./ynedate1.3G
./cddshe1.2G
./YmD