du (Unix)
du
(disk usage的縮寫,磁盤使用情況)是一個標準Unix程序,用於估量文件或文件夾的磁盤使用情況。
歷史
編輯du
工具首次出現在AT&T Unix的第一版中。
規範
編輯默認情況下,單一UNIX規範規定,du
顯示當前目錄每個文件與目錄的被分配磁盤空間的情況。鏈接文件將會顯示其本身大小而非其鏈接對象;目錄則會顯示其內容的大小。
由於du
只反映磁盤分配情況而非實際文件大小,所以如果文件被刪除後磁盤未被釋放,其顯示的數字會與df報告的數字有所不同。
用法
編輯du
可以帶一個參數,即指定一個路徑來工作;如果沒有指定,則使用當前目錄。SUS指定了du
有以下這些選項:
- -a,顯示所有的文件和目錄,而不僅僅顯示目錄。
- -H,計算命令行中指定鏈接對象的磁盤使用情況。
- -k,將大小除以1024字節,而非512字節顯示。
- -L,計算任意鏈接對象的使用情況。
- -s,僅匯報當前目錄總計的磁盤使用情況,而不顯示每一個文件。
- -x,僅遍歷指定路徑所在設備上的文件與目錄。
其他Unix和類Unix操作系統可能提供額外的選項。例如,BSD與GNU的du
規定了一個-h選項,把磁盤使用情況的大小加上單位後綴,顯示為一個用戶更容易理解的形式。(如:10MB)
示例
編輯KB單位的目錄總大小:
$ du -sk *
152304 directoryOne
1856548 directoryTwo
更易讀的目錄總大小格式(Byte、KB、MB、GB、TB、PB):
$ du -sh *
149M directoryOne
1.8G directoryTwo
當前目錄下包含隱藏文件,子目錄與文件的磁盤使用情況(從小到大排序):
$ du -sk .[!.]* *| sort -n
當前目錄下包含隱藏文件,子目錄與文件的磁盤使用情況(從大到小排序):
$ du -sk .[!.]* *| sort -nr
顯示深度為1的目錄大小及其總和
$ du -d 1 -c -h
參考
編輯外部連結
編輯使用手冊
編輯- du(頁面存檔備份,存於網際網路檔案館) — GNU coreutils中的使用手冊
- du — OpenBSD中的使用手冊
- du(頁面存檔備份,存於網際網路檔案館) — Dragonflybsd中的使用手冊
其他
編輯- Disk space-related utilities at Freshmeat.net