很多人都知道要查詢硬碟空間的使用狀況,可以用 df -h 來檢視
也知道要查詢目前所在目錄的大小,可以用 du -sh
而目前所在目錄下所有的檔案,包含子目錄、子子目錄...所佔的大小,則可以用 du -h
不過如果要知道目前目錄底下所有的子目錄,分別佔多少空間,就不知道該怎麼處理了
圖示說明一下:
current_dir
-sub_dir1
-sub_dir2
-sub_dir3
如果任何一個子目錄底下有許多子目錄、孫目錄...的話, du -h 就會全部都顯示出來,得出的資料就沒什麼幫助。這時候就需要一個比較少看到的指令 ─ xargs。
這個指令的作用在於把前一個指令的輸出,轉為後面指令的參數
所以查詢所有第一階的子目錄的指令如下:
ls | xargs du -sh
解說:ls先輸出目前目錄下的所有目錄及檔案,再將這些目錄及檔案傳給du 作為參數,就可以取的所有子目錄及檔案的大小了。