linux中檢視檔案和資料夾大小

語法

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 顯示版本資訊。

檢視當前目錄下所有目錄以及子目錄的大小

du -h 。

“。”代表當前目錄下,也可以換成一個明確的路徑,-h表示用K、M、G的人性化形式顯示。

檢視目錄/home/jenkins/大小,並不想看其他目錄以及其子目錄

du -sh /home/jenkins/

-s表示總結的意思,即只列出一個總結的值。

以MB為單位顯示一個目錄樹及其每個子樹的磁碟使用情況

du -m /home/jenkins/

以人類能看懂的方式列出當前所有目錄大小,只深入到第一層目錄

du -ah ——max-depth=1

——max-depth=n表示只深入到第n層目錄,此處設定為1,即表示不深入到第一層子目錄。-a表示包括目錄和檔案。檢視指定目錄du -h ——max-depth=1 /data/。

列出當前目錄中的目錄名不包括xyz字串的目錄的大小

du -h ——exclude=‘*xyz*’

列出指定資料夾下的檔案大小並按從大到小排序

du -ah ——max-depth=1 | sort -nrdu -ah ——max-depth=1 /home/jenkins/ | sort -nrdu -s * | sort -nr | head 選出排在前面的10個,du -s * | sort -nr | tail 選出排在後面的10個。

-s表示總結的意思,即只列出一個總結的值。