天天看點

du 隻檢視一級目錄大小或找出最大檔案夾

經常需要看目前目錄下的子目錄大小,以及檢視哪一個檔案或檔案夾占用磁盤空間較大(注意:多級目錄工作量太大無法查找)。

du -h顯示的是遞歸的所有檔案大小,例:

# du -h

4.6M	./gentoo-portage
8.0K	./dart-pub/api
1.5M	./dart-pub/packages
1.5M	./dart-pub
63G	.
           

du -sh又隻統計了所有檔案或檔案夾合起來的大小,例:

# du -sh
63G	.

           

但du -sh * 可以統計一級目錄檔案或檔案夾合起來的大小,例:

# du -sh *

120K	adobe-fonts
176K	alpine
244K	anaconda
168K	anthon
2.2M	apache
52K	armbian
1012K	armbian-releases
128K	artixlinux
68K	bananian
1.2M	bioconductor
           

或者亦可以使用du -lh --max-depth=1指令

# du -lh --max-depth=1

295M	./virtualbox
168K	./anthon
112K	./steamos
5.5M	./macports
3.7M	./pkgsrc
404K	./ceph
252K	./nodesource
3.6M	./repoforge
40K	./manjaro-cd
80K	./msys2
4.6M	./gentoo-portage
1.5M	./dart-pub
63G	.

           

查找目前目錄下占用磁盤空間最大的10個檔案夾

# du -sh  * | sort -nr | head -n 10

295M	./virtualbox
168K	./anthon
112K	./steamos
5.5M	./macports
3.7M	./pkgsrc
404K	./ceph
252K	./nodesource
3.6M	./repoforge
40K	./manjaro-cd
80K	./msys2
4.6M	./gentoo-portage
1.5M	./dart-pub
63G	.

           
函數 參數 說明
sort -n 按照字元串表示的數字值來排序
-r 按照反序排列
head -n 取出前多少行

繼續閱讀