du檢視某個檔案或目錄佔用磁碟空間的大小
一、du的功能:`du`reportstheamountofdiskspaceusedbythespecifiedfilesandforeachsubdirectory(ofdirectoryarguments).withnoarguments,`du`reportsthediskspaceforthecurrentdirectory。
很明顯,與df不同,它用來檢視檔案或目錄所佔用的磁碟空間的大小。
二、du常用的選項:
-h:以人類可讀的方式顯示(表示以恰當的K/M/G單位展示)
-a:顯示目錄佔用的磁碟空間大小,還要顯示其下目錄和檔案佔用磁碟空間的大小
-s:(summarize)顯示目錄佔用的磁碟空間大小,不要顯示其下子目錄和檔案佔用的磁碟空間大小(即算總和)
-c:顯示幾個目錄或檔案佔用的磁碟空間大小,還要統計它們的總和
--apparent-size:顯示目錄或檔案自身的大小
-l:統計硬連結佔用磁碟空間的大小
-L:統計符號連結所指向的檔案佔用的磁碟空間大小
一、du-h:這個就不多說了。
二、du-a:使用此選項時,顯示目錄和目錄下子目錄和檔案佔用磁碟空間的大小。
常用的命令
du-sh[指定檔案或目錄]:檢視當前目錄總共佔的容量。而不單獨列出各子項佔用的容量
du-lh--max-depth=1:檢視當前目錄下一級子檔案和子目錄佔用的磁碟容量。--max-depth 選項控制深度(從0、1...開始)
示例:
1.
du -sh *
2.
du -ch *.tar.gz
-c
選項,是 --total 的縮寫形式,它表示的是針對輸出的各個物件來計算其磁碟使用量的總和
3.
du -lh --max-depth=1
當--max-depth設定為0時, 只顯示當前資料夾總大小
可見, --max-depth=0的作用, 相當於-s
du和ls的區別
- du 展示的是磁碟空間佔用量。
- ls 展示的是檔案內容的大小。
同時,du 和 ls 針對同一個檔案,展示的大小是不一樣的 (抽象說:磁碟佔用=內容+包裝)
因為大部分檔案系統規定:
- 一個數據塊中最多存放一個檔案的內容,當沒存滿時,剩餘的空間不得被其他檔案使用。
- 當一個檔案的內容較大時,則可以儲存到多個數據塊中。