linux 查看當前目錄占用空間
du -ah --max-depth=1
du -sh : 查看當前目錄總共占的容量。而不單獨列出各子項占用的容量
du -lh --max-depth=1 : 查看當前目錄下一級子文件和子目錄占用的磁盤容量。
du 命令用來查看目錄或文件所占用磁盤空間的大小。
常用選項組合為:du -sh
du的功能:
du
reports the amount of disk space used by the specified files and for each subdirectory (of directory arguments). with no arguments,du
reports the disk space for the current directory。
很明顯,與df不同,它用來查看文件或目錄所占用的磁盤空間的大小
- du常用的選項:
-h:以人類可讀的方式顯示
-a:顯示目錄占用的磁盤空間大小,還要顯示其下目錄和文件占用磁盤空間的大小
-s:顯示目錄占用的磁盤空間大小,不顯示其下子目錄和文件占用的磁盤空間大小
-c:顯示幾個目錄或文件占用的磁盤空間大小,還要統計它們的總和
--apparent-size:顯示目錄或文件自身的大小
-l :統計硬鏈接占用磁盤空間的大小
-L:統計符號鏈接所指向的文件占用的磁盤空間大小
一、du -a:使用此選項時,顯示目錄和目錄下子目錄和文件占用磁盤空間的大小。直接使用-a 以字節為單位,-ha 如下圖以k為結果顯示。

使用-a選項后,它不僅顯示了目錄(最后一行),而且顯示了目錄下各個文件占用磁盤空間的大小。顯示文件夾及子目錄單個文件占用空間大小。
二、du -s:使用此選項時,du只顯示目錄所占用磁盤空間的大小,而不顯示其下子目錄和文件占用磁盤空間的信息。顯示文件夾占用大小

默認情況下,du不顯示目錄下文件占用磁盤空間的信息,但它會顯示其下子目錄占用磁盤空間的信息;而使用-s選項以后,只顯示xx目錄占用磁盤空間的大小。
三、du --apparent-size:顯示文件或目錄自身大小,而不是它們占用的磁盤空間大小。文件或目錄占用磁盤空間的大小與它們自身大小有時候並非完全一致;我們知道了du給出的是占用的磁盤空間的大小。

四、du -c:使用此選項時,不僅顯示幾個文件或目錄各自占用磁盤空間的大小,還統計它們的總和。

如圖所示,加上-c選項后,du不僅顯示兩個目錄各自占用磁盤空間的大小,還在最后一行統計它們的總和。
五、du -l:這個選項主要是針對硬鏈接。在統計目錄占用磁盤空間大小時,-l選項會把硬鏈接也統計進來。幫助文檔是這樣解釋的:Count the size of all files,even if they have appeared already(as a hard link)。

我們在download目錄下建立一個硬鏈接,指向本目錄下的一個文件。不使用-l選項時,du發現硬鏈接指向本目錄下的文件,於是自動忽略該鏈接文件,以免造成重復統計;使用-l選項,du才會把硬鏈接文件也統計進來。
六、du -L:這個選項主要是針對符號鏈接。它會把符號鏈接所指向的文件占用磁盤空間的大小也統計進來。幫助文檔是這樣解釋的:Dereference symbolic links(show the disk space used by the file or directory that the link points to instead of the space used by the link)。

我們在download目錄下創建一個符號鏈接,指向本目錄下的一個文件。我們看到上面圖片中顯示的操作結果,當使用-L選項時,du會把符號鏈接所指向的文件的大小也統計到目錄里來。
另外我們看du -lh的結果,與du -h相同,好像沒有統計出符號鏈接的大小;其實並非如此。從實際操作來看,符號鏈接本身似乎並不占用磁盤空間,所以才出現上述情況。
最后,du命令在統計目錄占用磁盤空間時,默認不統計鏈接文件(無論是硬鏈接或是符號鏈接),所以要用-l和-L選項特地指出來;此外,du命令默認不顯示目錄下文件占用磁盤空間的信息,但是卻默認顯示其下子目錄所占用磁盤空間的信息。怪哉。
du -sh : 查看當前目錄總共占的容量。而不單獨列出各子項占用的容量
du -lh --max-depth=1 : 查看當前目錄下一級子文件和子目錄占用的磁盤容量。
du -ah --max-depth=1 :顯示當前目錄的占用磁盤容量
