du 使用詳解 查看一級目錄大小

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

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章