統(tǒng)計(jì)目錄中的文件的大小并以列表顯示: du [Path] -a 全部文件 包括隱藏的。 -h 以M 為單位顯示文件大小結(jié)果。 -s 統(tǒng)計(jì)此目錄中所有文件大小總和。 .. 這些是常用的 e.g.: du -sh du -ah
創(chuàng)新互聯(lián)公司堅(jiān)持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時(shí)代的廣河網(wǎng)站設(shè)計(jì)、移動(dòng)媒體設(shè)計(jì)的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
du [選項(xiàng)][文件]
顯示每個(gè)文件和目錄的磁盤使用空間。
-a或-all 顯示目錄中個(gè)別文件的大小。
-b或-bytes 顯示目錄或文件大小時(shí),以byte為單位。
-c或--total 除了顯示個(gè)別目錄或文件的大小外,同時(shí)也顯示所有目錄或文件的總和。
-k或--kilobytes 以KB(1024bytes)為單位輸出。
-m或--megabytes 以MB為單位輸出。
-s或--summarize 僅顯示總計(jì),只列出最后加總的值。
-h或--human-readable 以K,M,G為單位,提高信息的可讀性。
-x或--one-file-xystem 以一開始處理時(shí)的文件系統(tǒng)為準(zhǔn),若遇上其它不同的文件系統(tǒng)目錄則略過。
-L符號(hào)鏈接或--dereference符號(hào)鏈接 顯示選項(xiàng)中所指定符號(hào)鏈接的源文件大小。
-S或--separate-dirs 顯示個(gè)別目錄的大小時(shí),并不含其子目錄的大小。
-X文件或--exclude-from=文件 在文件指定目錄或文件。
--exclude=目錄或文件 略過指定的目錄或文件。
-D或--dereference-args 顯示指定符號(hào)鏈接的源文件大小。
-H或--si 與-h參數(shù)相同,但是K,M,G是以1000為換算單位。
-l或--count-links 重復(fù)計(jì)算硬件鏈接的文件。
命令:
du
輸出:
說明:
只顯示當(dāng)前目錄下面的子目錄的目錄大小和當(dāng)前目錄的總的大小,最下面的11536當(dāng)前目錄的總大小。
命令:
du hello.i
輸出:
命令:
du ./process
輸出:
命令:
du -s
輸出:
命令:
du -h
命令:du -ah
命令 du -c hello.i ./use_code
輸出
命令:
du -h |sort -nr|more
輸出:
命令:
du -h --max-depth=1
輸出:
一個(gè)比較經(jīng)典的問題:
如果線上機(jī)器的磁盤占用率超級(jí)高,怎么辦?
這時(shí)候優(yōu)先想到的肯定是,定位到占用磁盤空間最大的那些文件,然后把可以刪的給刪掉。
那么,問題來了,如何定位到占用磁盤空間最大的文件?
一個(gè)辦法是執(zhí)行如下命令:
里面涉及三個(gè)指令:du、sort、more
既然用到了,就順便多了解一下這三個(gè)指令的用法,算是做下個(gè)人筆記。
首先是du
作用:用來查看文件所占用的磁盤情況。
格式:du [選項(xiàng)] [文件]
可用選項(xiàng)(如下為du --help展示的內(nèi)容):
操作示例:
對(duì)幾個(gè)比較常用的選項(xiàng)單獨(dú)拿出來,在機(jī)器上實(shí)際操作,效果如下:
首先,當(dāng)前目錄如下:
du:
其實(shí)吧,從圖里面可以看到,使用“du”的時(shí)候,最后一行就當(dāng)前目錄的磁盤使用總量,所以,感覺一般情況下-c這個(gè)選項(xiàng)并沒有什么用。
du -s:只計(jì)算總量
不過,注意:-s與-a不能同時(shí)存在,會(huì)報(bào)錯(cuò)的。
sort
作用:對(duì)輸出的結(jié)果進(jìn)行排序
可用選項(xiàng):
-r:代表逆序排序
-n:按照字符串?dāng)?shù)值排序
-g:按照常規(guī)數(shù)值排序
-f:忽略字母大小寫
實(shí)測(cè)效果:
首先是測(cè)試文件的原始狀態(tài):
測(cè)試一:sort
可以發(fā)現(xiàn):
空行排在了第一位;
不管數(shù)字有多大,字符串都會(huì)排在數(shù)字的后面;
數(shù)字之間排序的時(shí)候,優(yōu)先考慮首位數(shù)字(感覺是把數(shù)字也當(dāng)成了一個(gè)字符串進(jìn)行排序);
more
作用:用于一頁一頁地展示文件內(nèi)容。
幾個(gè)常用操作:
空格:翻到下一頁
b:翻到上一頁
/:啟動(dòng)字符串搜索(類似于vim)
此外:
more +n XXX:從XXX文件的第n行開始展示
more -n XXX:展示XXX文件,并且將n行視為一頁,也就是按空格時(shí),只會(huì)顯示后續(xù)的N行
cat
作用:一次性的展示所有文件內(nèi)容
cat有兩個(gè)比較有用的選項(xiàng):
-n:輸出所有行號(hào)
-b:只對(duì)非空行輸出行號(hào)
此外,
cat支持同時(shí)輸出多個(gè)文件的內(nèi)容:cat XXX YYYY ZZZZ
并且,cat可以與more結(jié)合使用:cat XXX | more 或者 cat XXX YYYY ZZZZ | more 或者 cat -n XXX | more
less:
作用:對(duì)文件或者輸出內(nèi)容進(jìn)行分頁展示,并且less可以用于打開多個(gè)文件
常用操作:
j:向上滾動(dòng)一行
k:向下滾動(dòng)一行(類似于vim)
g:跳到第一行
G:跳到最后一行
b:向上翻一頁
空格:翻頁
n%:跳轉(zhuǎn)到整個(gè)文件的n%處
:e :在使用less打開多個(gè)文件時(shí),使用“:e”選擇跳轉(zhuǎn)到其他文件去
/:進(jìn)行字符串搜索
v:啟動(dòng)編輯
常用選項(xiàng):
-N:在每一行前面都顯示行號(hào)
-m:顯示讀取文件的百分比
-M:顯示讀取文件的百分比、行號(hào)和總行數(shù)
注意:
其他兩個(gè)比較簡單的指令:
head:顯示一個(gè)文件的前N行
用法:head -n 行數(shù) 文件名
tail:顯示一個(gè)文件的最后N行
用法:tail -n 行數(shù) 文件名
不過,使用tai的時(shí)候,因?yàn)?f選項(xiàng)可以自動(dòng)顯示新增加的內(nèi)容,所以經(jīng)常會(huì)使用如下方式:
tail -f 文件名