使用 du
du 命令并不是顯示磁盤的空閑空間,而是顯示磁盤使用情況的信息。du 工具用于確定文件和目錄的磁盤使用情況。要使用這個工具,改變到一個目錄,然后運行該工具(請參見清單 6)。
清單 6. du 命令
$ cd /var |
上面的清單 6 中顯示的輸出,經(jīng)過了適當?shù)恼{(diào)整。缺省情況下,du 將顯示當前或指定的目錄下每個文件和目錄的文件使用情況。得到的值是文件的大小,單位為該系統(tǒng)中的缺省塊大小,與 df 所使用的單位相同?赡苁且部赡懿皇 1K,而使用 -k 命令行選項,您可以強制以 1K 塊為單位進行顯示。
您可能需要根據(jù)所查看的頂級文件或目錄對信息進行摘要。使用 -s 選項以打開摘要視圖。下面是 Solaris 安裝中的一個摘要版本在 /var 目錄中的顯示:
$ du -sk |
請注意,它顯示了當前目錄 (.) 的摘要信息。要獲得所有文件和目錄的摘要信息,可以使用 * 通配符(請參見清單 7)。
清單 7. 使用 * 通配符獲得摘要信息
$ du -sk * |
使用該工具時,特別是在用戶目錄中使用該工具時,請?zhí)貏e小心,因為所顯示的信息中不包含隱藏 文件,換句話說,具有單點號前綴的那些文件和目錄。您可能希望使用下面的代碼行,在用戶目錄中獲得所有的摘要信息:
$ du -sk * .[a-zA-Z0-9]* |
du 命令的最后一個非常有用的選項是 -d,該選項可以防止 du 命令超過文件系統(tǒng)邊界。例如,要確定根文件系統(tǒng)而不是任何其他的文件系統(tǒng)的磁盤使用情況,您可以使用 -d 選項:
$ du -dsk / |
有些系統(tǒng)沒有這個選項,但是有 -x 命令行選項,該選項僅包含與您所指定的路徑相同的設(shè)備或文件系統(tǒng)中的文件使用情況。
查找一個特定用戶的磁盤使用情況
要查找某個用戶所使用的磁盤空間,在使用 find 命令的同時,您需要結(jié)合使用 du 命令以僅報告特定用戶的磁盤使用情況。
$ find . -user mc -type f -exec du -k {} \; |
-user 選項允許您指定 find 將僅報告屬于特定用戶的文件。-type 選項強制 find 僅返回特定類型(在本示例中是文件)項目的路徑,這樣可以防止 du 包含目錄,因為這些目錄可能屬于某個用戶,但其中卻包含了許多用戶的文件。然后,對于查找到的每個路徑,執(zhí)行 du 命令以報告磁盤使用情況。
要獲得摘要信息,換句話說,即某個特定用戶所使用的總空間,您可以使用 awk 對該信息進行總計,并打印出最后的值:
$ find . -user mc -type f -exec du -k {} \;|awk '{ s = |
對于組,您可以根據(jù)相同的原則對 find 使用 -group 選項:
$ find . -group mcslp -type f -exec du -k {} \;|awk '{ s = s+$1 } END { print |
然而,如果啟用了磁盤配額,那么就有一種更簡單的方法。
2015年全國職稱計算機考試教材(2007模 .. 定價:¥225 優(yōu)惠價:¥213 更多書籍 | |
全國職稱計算機考試速成過關(guān)系列套裝:W .. 定價:¥133 優(yōu)惠價:¥133.0 更多書籍 |