鍍金池/ 教程/ Linux/ shell 學(xué)習(xí)四十六天---文件系統(tǒng)的空間信息 df 和 du 命令
shell 學(xué)習(xí)四十五天---xargs
shell學(xué)習(xí)第三天
shell 學(xué)習(xí)十五天---join 連接字段
shell 學(xué)習(xí)第二天
shell 學(xué)習(xí)四十三天---臨時(shí)性文件的建立與使用
shell 學(xué)習(xí)第六天---小結(jié)
shell 學(xué)習(xí)三十三天---關(guān)于重定向
shell 學(xué)習(xí)二十九天---循環(huán)
shell 學(xué)習(xí)二十四天---提取開頭或結(jié)尾數(shù)行
shell 學(xué)習(xí)第十天---sed 查找與替換
shell 學(xué)習(xí)第十一天---sed 正則的精確控制
shell 學(xué)習(xí)三十天---break,continue,shift,getopts
shell 學(xué)習(xí)---小結(jié)
shell 學(xué)習(xí)三十一天---函數(shù)問題
shell 學(xué)習(xí)第四天---華麗的 printf 輸出
shell 學(xué)習(xí)三十五天---波浪號(hào)展開與通配符
shell 學(xué)習(xí)十九天---文本塊排序
shell 學(xué)習(xí)十二天---行與字符串
shell 學(xué)習(xí)二十一天---重新格式化段落
shell 學(xué)習(xí)十八天---文本排序
shell 學(xué)習(xí)十三天---sed 案例分析
shell 學(xué)習(xí)四十一天---列出文件 ls 和 od 命令
shell 學(xué)習(xí)十七天---awk 命令
shell 學(xué)習(xí)三十六天---命令替換
shell 學(xué)習(xí)十六天---join 練習(xí)
shell 學(xué)習(xí)三十二天---read 讀取一行
shell 學(xué)習(xí)二十二天---計(jì)算行數(shù),字?jǐn)?shù)以及字符數(shù)
shell 學(xué)習(xí)小總結(jié)---本章小結(jié)
shell 學(xué)習(xí)第八天---擴(kuò)展正則表達(dá)式(ERE)
shell 學(xué)習(xí)四十二天---使用 touch 更新文件時(shí)間
shell 學(xué)習(xí)二十八天---case 語句
shell 學(xué)習(xí)三十九天---內(nèi)建命令
shell 學(xué)習(xí)第一天
shell 學(xué)習(xí)三十四天---printf 詳解
shell 學(xué)習(xí)二十六天---變量與算數(shù)
shell 學(xué)習(xí)三十八天---執(zhí)行順序和 eval
shell 學(xué)習(xí)四十四天---尋找文件
shell 學(xué)習(xí)二十五天---神器的管道符
shell 學(xué)習(xí)十四天---使用 cut 選定字段
shell 學(xué)習(xí)第五天---基本的I/O重定向
shell 學(xué)習(xí)四十天---awk 的驚人表現(xiàn)
shell 學(xué)習(xí)二十天---sort 的其他內(nèi)容以及 uniq 命令
shell 學(xué)習(xí)二十三天---打印
shell 學(xué)習(xí)第九天---分組
shell 學(xué)習(xí)四十八天---文件校驗(yàn)和匹配
shell 學(xué)習(xí)二十七天---退出狀態(tài)和 if 語句
shell 學(xué)習(xí)四十七天---文件比較 cmp,diff,patch
shell 學(xué)習(xí)第七天---基礎(chǔ)正則表達(dá)式(BRE)
shell 學(xué)習(xí)四十六天---文件系統(tǒng)的空間信息 df 和 du 命令
shell 學(xué)習(xí)三十七天---引用
shell 學(xué)習(xí)小結(jié)

shell 學(xué)習(xí)四十六天---文件系統(tǒng)的空間信息 df 和 du 命令

df 命令

df 命令提供單行摘要,一行顯示一個(gè)加載的問價(jià)系統(tǒng)的已使用的和可用的空間.其單位視系統(tǒng)而定,有些使用塊,有些則是 KB.大部分現(xiàn)代實(shí)現(xiàn)都支持-k 選項(xiàng),也就是強(qiáng)制使用 KB 單位,以及-l(小寫字母 L)選項(xiàng),僅顯示本地文件系統(tǒng),排除網(wǎng)絡(luò)加載的文件系統(tǒng).

df 命令詳解
語法:
df [選項(xiàng)] [文件或目錄]
用途:
顯示一個(gè)或多個(gè)文件系統(tǒng)內(nèi)部的 inode 或空間使用情況
主要選項(xiàng):
-i 顯示 inode 技術(shù),而非空間
-k 顯示空間時(shí),以 KB 為單位,而非塊
-l 小寫 L,僅顯示本地文件系統(tǒng)

行為:
df 會(huì)針對每個(gè)文件或目錄參數(shù),如果無提供參數(shù),則為所有的文件系統(tǒng),產(chǎn)生單行表頭以識(shí)別輸出蘭,再接上包含該文件或目錄的文件系統(tǒng)的使用量報(bào)告.

案例

$df  
Filesystem     1K-blocks    Used Available Use% Mounted on  
/dev/sda3        1032088  262592    717068  27% /  
tmpfs             961216       0    961216   0% /dev/shm  
/dev/sda1         198337   34004    154093  19% /boot  
/dev/sda7       14219628  166640  13330660   2% /home  
/dev/sda2        3120456 1874636   1087308  64% /usr  
/dev/sda5        1032088  177716    801944  19% /var  
/dev/sdb1        2071384   68632   1897528   4% /disk1  

分析:df 命令的輸出清單的第一列是代表文件系統(tǒng)對應(yīng)的設(shè)備的路徑名(一般是硬盤上的分區(qū));第二列給出分區(qū)包含的數(shù)據(jù)塊(1024 字節(jié))的數(shù)目;第三四列分別表示一用的和可用的數(shù)據(jù)塊數(shù)目.用戶也會(huì)感到奇怪的是;第三四列數(shù)之和不等于第二列中的數(shù)據(jù)塊.這是因?yàn)槿笔〉拿總€(gè)分區(qū)都留了少量空間供系統(tǒng)管理員使用.及時(shí)遇到普通用戶空間已滿的情況,管理員仍能登陸和留有解決問題所需的工作空間.清單 Use%中列表示普通用戶空間使用的百分比,及時(shí)這一數(shù)字達(dá)到 100%,分區(qū)仍能留有系統(tǒng)管理員使用的空間;最后 Mount on 列表示文件系統(tǒng)的掛載點(diǎn).

$df -i  
Filesystem     Inodes IUsed  IFree IUse% Mounted on  
/dev/sda3       65536  6410  59126   10% /  
tmpfs          240304     1 240303    1% /dev/shm  
/dev/sda1       51200    39  51161    1% /boot  
/dev/sda7      903984    86 903898    1% /home  
/dev/sda2      198400 57886 140514   30% /usr  
/dev/sda5       65536  2356  63180    4% /var  
/dev/sdb1      131648    11 131637    1% /disk1  

分析:以 inode 模式來顯示磁盤使用情況

$df /home  
Filesystem     1K-blocks   Used Available Use% Mounted on  
/dev/sda7       14219628 166640  13330660   2% /home  

分析:顯示指定類型磁盤

du 命令

du 命令也是查看使用空間的,但是與 df 命令不同的是 du 命令是對文件和目錄磁盤使用的空間的查看,還是和 df 命令有一些區(qū)別的.
du 命令詳解
語法:
du [選項(xiàng)] [文件]
用途:顯示一個(gè)或多個(gè)目錄樹的空間使用率
主要選項(xiàng):
-k
空間的顯示,以 KB 為單位,而非(與系統(tǒng)相依的)塊(block)
-s
為每個(gè)參數(shù),僅顯示單行摘要

行為:
du 會(huì)針對每個(gè)文件或目錄參數(shù)----如果無提供這類參數(shù)則為當(dāng)前目錄,產(chǎn)生一個(gè)輸出行,其會(huì)包含以整數(shù)表示的使用率,并接著文件或目錄的名稱.除非給定-s 選項(xiàng),否則每個(gè)目錄參數(shù)會(huì)以遞歸方式查找,為每個(gè)嵌套目錄產(chǎn)生一個(gè)報(bào)告行.

案例:

$du       #在 tmp 目錄下使用 du 命令  
4       ./.ICE-unix  
8       .  

分析:只顯示當(dāng)前目錄下面的子目錄的目錄大小和大錢目錄的總大小,最下面的 8 為當(dāng)前目錄的總大小.注意,只顯示目錄的.

案例:顯示指定文件所占空間的大小

$du /etc/passwd  
4       /etc/passwd  

案例:查看指定目錄的所占空間

$du /root  
8       /root/.w3m  
4       /root/.pki/nssdb  
8       /root/.pki  
200     /root  

案例:顯示多個(gè)文件所占大小

$du /tmp /root  
4       /tmp/ert  
4       /tmp/.ICE-unix  
12      /tmp  
8       /root/.w3m  
4       /root/.pki/nssdb  
8       /root/.pki  
200     /root  

案例:只顯示總和的大小

$du -s /root  
200     /root  

案例:方便閱讀的格式

$du -hs /root  
200K    /root  

案例:文件和目錄都顯示
du -ah /root

案例:顯示多個(gè)文件或目錄各自占用磁盤空間的大小.還統(tǒng)計(jì)他們的總和

$du -cs /etc /tmp /root  
28048   /etc  
12      /tmp  
200     /root  
28260   總用量  

案例:按照空間大小排序
$du /etc| sort -nr | more

du 和 df 的區(qū)別
df 命令用于查看文件系統(tǒng)的使用情況;
使用 df 命令輸出信息的第一個(gè)標(biāo)注:
文件系統(tǒng) 1K-塊 已用 可用 已用% 掛載點(diǎn)
du 命令用于查看文件或目錄所占磁盤空間的使用情況.