Linux 磁碟空間大小統計du命令常見用法,linuxdu

來源:互聯網
上載者:User

Linux 磁碟空間大小統計du命令常見用法,linuxdu
在 Linux下,可以對某個檔案或檔案夾所佔空間大小進行統計,這裡將一些常用用法匯總如下:

1、對指定檔案或檔案夾進行統計,預設單位為kbyte(k或KB),下例對檔案夾testa進行統計:

[web@localhost ~]$ du -s testa
1589308    testa

2、對檔案夾統計的正確做法,如果想知道某個檔案夾所佔空間的大小,用什麼命令?直接用du可以嗎?
可以是可以,但是,它會將該檔案夾底下所有目錄都統計一遍,顯然,這不是我們想要的。正確的做法是使用 -s操作符,下面是不用-s 的結果:
[web@localhost Oracle]$ du utils
16    utils/config/10.3
172    utils/config/help/7.2.0.0/en/cw
176    utils/config/help/7.2.0.0/en
204    utils/config/help/7.2.0.0/pt_BR/cw
208    utils/config/help/7.2.0.0/pt_BR
204    utils/config/help/7.2.0.0/fr/cw
208    utils/config/help/7.2.0.0/fr
188    utils/config/help/7.2.0.0/de/cw
192    utils/config/help/7.2.0.0/de
164    utils/config/help/7.2.0.0/zh_CN/cw
168    utils/config/help/7.2.0.0/zh_CN
168    utils/config/help/7.2.0.0/zh_TW/cw
172    utils/config/help/7.2.0.0/zh_TW
176    utils/config/help/7.2.0.0/ko/cw
180    utils/config/help/7.2.0.0/ko
196    utils/config/help/7.2.0.0/es/cw
200    utils/config/help/7.2.0.0/es
192    utils/config/help/7.2.0.0/ja/cw
196    utils/config/help/7.2.0.0/ja
180    utils/config/help/7.2.0.0/it/cw
184    utils/config/help/7.2.0.0/it
1888    utils/config/help/7.2.0.0
1892    utils/config/help
1912    utils/config
8    utils/ccr/config/default
16    utils/ccr/config
3336    utils/ccr/lib
23508    utils/ccr/inventory/pending
23512    utils/ccr/inventory
180    utils/ccr/bin
16    utils/ccr/doc
27188    utils/ccr
20    utils/clone
44    utils/bsu
28    utils/quickstart/images
128    utils/quickstart
572    utils/uninstall/WebLogic_Platform_10.3.6.0
40    utils/uninstall/extftr
712    utils/uninstall
30028    utils

使用-s後:
[web@localhost Oracle]$ du -s utils
30028    utils

3、顯示實際檔案夾的大小(對實際檔案大小進行統計,而不是對所佔用磁碟空間進行統計)
[web@localhost Oracle]$ du --apparent-size utils
6    utils/config/10.3
103    utils/config/help/7.2.0.0/en/cw
107    utils/config/help/7.2.0.0/en
128    utils/config/help/7.2.0.0/pt_BR/cw
132    utils/config/help/7.2.0.0/pt_BR
128    utils/config/help/7.2.0.0/fr/cw
132    utils/config/help/7.2.0.0/fr
119    utils/config/help/7.2.0.0/de/cw
123    utils/config/help/7.2.0.0/de
94    utils/config/help/7.2.0.0/zh_CN/cw
98    utils/config/help/7.2.0.0/zh_CN
97    utils/config/help/7.2.0.0/zh_TW/cw
101    utils/config/help/7.2.0.0/zh_TW
111    utils/config/help/7.2.0.0/ko/cw
115    utils/config/help/7.2.0.0/ko
119    utils/config/help/7.2.0.0/es/cw
123    utils/config/help/7.2.0.0/es
124    utils/config/help/7.2.0.0/ja/cw
128    utils/config/help/7.2.0.0/ja
114    utils/config/help/7.2.0.0/it/cw
118    utils/config/help/7.2.0.0/it
1175    utils/config/help/7.2.0.0
1179    utils/config/help
1188    utils/config
5    utils/ccr/config/default
9    utils/ccr/config
3284    utils/ccr/lib
23456    utils/ccr/inventory/pending
23460    utils/ccr/inventory
153    utils/ccr/bin
16    utils/ccr/doc
27036    utils/ccr
7    utils/clone
30    utils/bsu
15    utils/quickstart/images
102    utils/quickstart
546    utils/uninstall/WebLogic_Platform_10.3.6.0
40    utils/uninstall/extftr
672    utils/uninstall
29055    utils
可以看到檔案的實際大小總是比佔用空間小的。

4、如果要想讓結果看起來易讀一點咋辦?也就是我們平時口中習慣說的空間大小,也就是轉換為多少G, 或多少M,或多少K,當然只是一個概數。
[web@localhost ~]$ du -s -h testa
1.6G    testa

5、指定統計單位,統計單位可以是塊(512byte),byte,Kbyte(KB)等
按塊統計:
[web@localhost ~]$ du -s -B 512 testa
3178616    testa

按位元組進行統計
[web@localhost ~]$ du -s -B 1 testa
1627451392    testa

按K位元組進行統計
[web@localhost ~]$ du -s -B 1024 testa
1589308    testa

6、統計深度,比如,我不僅想看目前的目錄下各個檔案夾的大小,我還希望看到二級目錄下各個檔案夾下的大小
[web@localhost Oracle]$ du --max-depth=2
1912    ./utils/config
27188    ./utils/ccr
20    ./utils/clone
44    ./utils/bsu
128    ./utils/quickstart
712    ./utils/uninstall
30028    ./utils
21240    ./wlserver_10.3/common
4    ./wlserver_10.3/L10N
16    ./wlserver_10.3/inventory
454968    ./wlserver_10.3/server
3460    ./wlserver_10.3/sip
196    ./wlserver_10.3/uninstall
479896    ./wlserver_10.3
11936    ./coherence_3.7/lib
12    ./coherence_3.7/inventory
52    ./coherence_3.7/bin
8    ./coherence_3.7/uninstall
12024    ./coherence_3.7
228    ./modules/junit_1.0.0.0_4-5
216    ./modules/net.sf.antcontrib_1.1.0.0_1-0b2
688    ./modules/features
1852    ./modules/com.bea.weblogic.jms.dotnetclient_1.3.2.0
4164    ./modules/org.apache.ant_1.7.1
143464    ./modules
185472    ./user_projects/domains
185476    ./user_projects
24    ./logs
851044    .

也就是說對兩級目錄進行分別統計,其中對子檔案夾的統計(檔案夾內容所佔空間的和),這和單獨統計檔案夾是一樣的,如對
./wlserver_10.3/common 統計的結果是21240,單獨統計該檔案夾試試看:
[web@localhost Oracle]$ du -s ./wlserver_10.3/common
21240    ./wlserver_10.3/common

7、嫌結果輸出行數太多?那就不換行!
[web@localhost Oracle]$ du -0 utils
16    utils/config/10.3172    utils/config/help/7.2.0.0/en/cw176    utils/config/help/7.2.0.0/en204    utils/config/help/7.2.0.0/pt_BR/cw208    utils/config/help/7.2.0.0/pt_BR204    utils/config/help/7.2.0.0/fr/cw208    utils/config/help/7.2.0.0/fr188    utils/config/help/7.2.0.0/de/cw192    utils/config/help/7.2.0.0/de164    utils/config/help/7.2.0.0/zh_CN/cw168    utils/config/help/7.2.0.0/zh_CN168    utils/config/help/7.2.0.0/zh_TW/cw172    utils/config/help/7.2.0.0/zh_TW176    utils/config/help/7.2.0.0/ko/cw180    utils/config/help/7.2.0.0/ko196    utils/config/help/7.2.0.0/es/cw200    utils/config/help/7.2.0.0/es192    utils/config/help/7.2.0.0/ja/cw196    utils/config/help/7.2.0.0/ja180    utils/config/help/7.2.0.0/it/cw184    utils/config/help/7.2.0.0/it1888    utils/config/help/7.2.0.01892    utils/config/help1912    utils/config8    utils/ccr/config/default16    utils/ccr/config3336    utils/ccr/lib23508    utils/ccr/inventory/pending23512   utils/ccr/inventory180    utils/ccr/bin16    utils/ccr/doc27188    utils/ccr20    utils/clone44    utils/bsu28utils/quickstart/images128    utils/quickstart572    utils/uninstall/WebLogic_Platform_10.3.6.040    util

8、統計時,不想將某些檔案統計在內,怎麼辦,使用--exclude=[pattern]去掉,下面的例子中,對檔案夾logs進行統計:
[web@localhost logs]$ ls -l
總計 20
-rw-r--r-- 1 web weblogic 1317 07-02 09:19 log.txt
-rw-r----- 1 web weblogic 1743 07-02 09:25 wlsconfig_20140702092113.log
-rw-r----- 1 web weblogic 1743 07-02 09:27 wlsconfig_20140702092546.log
-rw-r----- 1 web weblogic 1743 07-02 09:28 wlsconfig_20140702092738.log
-rw-r----- 1 web weblogic 1743 07-02 09:29 wlsconfig_20140702092819.log

可以檔案夾中一共有5個檔案,每個檔案大小2K左右,看一下實際佔用空間大小
[web@localhost logs]$ du -s *
4    log.txt
4    wlsconfig_20140702092113.log
4    wlsconfig_20140702092546.log
4    wlsconfig_20140702092738.log
4    wlsconfig_20140702092819.log
實際每個所佔用的空間4k左右(注意:檔案佔用空間和檔案大小有區別)
[web@localhost logs]$ du --apparent-size *
2    log.txt
2    wlsconfig_20140702092113.log
2    wlsconfig_20140702092546.log
2    wlsconfig_20140702092738.log
2    wlsconfig_20140702092819.log
使用k位元組統計大約2K左右

[web@localhost logs]$ du --apparent-size -B 1 *
1317    log.txt
1743    wlsconfig_20140702092113.log
1743    wlsconfig_20140702092546.log
1743    wlsconfig_20140702092738.log
1743    wlsconfig_20140702092819.log
使用位元組統計,則和ls命令擷取的檔案大小結果一樣

[web@localhost logs]$ cd ..
[web@localhost Oracle]$ du -s logs
24    logs

不包含txt檔案後統計,大小少了4k
[web@localhost Oracle]$ du -s --exclude=*.txt logs
20    logs

9、統計符號連結,在統計某檔案夾磁碟空間大小時,符號連結實際儲存位置可能在其他分區上,預設是不進行統計的,若要進行統計,則使用-L參數
[web@localhost logs]$ ls -l ../registry.xml
-rw-r--r-- 1 web weblogic 1908 07-02 09:19 ../registry.xml

可以看到registry.xml實際大小2K左右,建立兩個符號連結:
[web@localhost logs]$ ln -s ../registry.xml ./test.xml
[web@localhost logs]$ ln -s ../registry.xml test2.xml

[web@localhost logs]$ ls -l
總計 20
-rw-r--r-- 1 web weblogic 1317 07-02 09:19 log.txt
lrwxrwxrwx 1 web weblogic   15 07-11 10:36 test2.xml -> ../registry.xml
lrwxrwxrwx 1 web weblogic   15 07-11 10:36 test.xml -> ../registry.xml
-rw-r----- 1 web weblogic 1743 07-02 09:25 wlsconfig_20140702092113.log
-rw-r----- 1 web weblogic 1743 07-02 09:27 wlsconfig_20140702092546.log
-rw-r----- 1 web weblogic 1743 07-02 09:28 wlsconfig_20140702092738.log
-rw-r----- 1 web weblogic 1743 07-02 09:29 wlsconfig_20140702092819.log


這時,可以看到統計的磁碟空間多了8k,變成了32
[web@localhost Oracle]$ du -L logs
32    logs


在linux中查看磁碟空間的大小,用什命令?

df -v
 
對於linux中檢查磁碟空間的命令

指令磁碟使用方式:du
指令磁碟空間例如: df -kvi /home

如果想知道更多的指令,可以打入 df --help 或 du --help
 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.