如何在linux下找出佔用用空間最多的檔案或目錄
在Linux下找出佔用空間最多的檔案或目錄可以使用du
(disk usage)指令。du
指令可以顯示每個目錄和檔案所使用的磁碟空間。
以下是一個基本的du
指令範例:
du -ah /path/to/directory
這個指令會列出/path/to/directory
及其所有子目錄和檔案的磁碟使用量。
使用-a
或--all
選項會顯示所有檔案的總使用量,而-h
或--human-readable
選項則會以人類可讀的格式(如1K, 234M, 2G等)顯示使用量。
如果你想要找出佔用空間最多的前幾個檔案或目錄,可以使用sort
和head
指令來對使用量進行排序:
du -ah /path/to/directory | sort -h | head -n 10
這個指令會列出/path/to/directory
下前10個佔用空間最多的檔案或目錄。sort -h
會對使用量進行人類可讀格式的大小的排序,head -n 10
會只顯示前10個結果。
如果你想要找出整個檔案系統中佔用空間最多的檔案或目錄,可以使用df
(disk free)指令來查看檔案系統的總使用量和可用空間,然後使用find
指令來找出佔用空間最多的檔案或目錄:
df -h | sort -h
這個指令會列出所有檔案系統的使用量和可用空間,並按照總使用量進行排序。然後你可以使用find
指令來找出特定的檔案或目錄:
df -h | sort -h | grep ^/path/to/directory | awk '{print $6}' | xargs -I{} find {} -type f -print0 | xargs -0 du -sh
這個指令會找出/path/to/directory
下所有檔案的使用量,並列出佔用空間最多的前10個檔案。grep ^/path/to/directory
用來篩選出/path/to/directory
的結果,awk '{print $6}'
用來提取檔案的路徑,xargs -I{} find {} -type f -print0
用來找出所有的檔案,xargs -0 du -sh
用來對這些檔案的使用量進行排序。