du命令
磁盤管理
du命令也是查看使用空間的,但是與df命令不同的是Linux du命令是對文件和目錄磁盤使用的空間的查看,還是和df命令有一些區(qū)別的。
語法
du [選項(xiàng)][文件]
選項(xiàng)
-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符號鏈接>或--dereference符號鏈接> 顯示選項(xiàng)中所指定符號鏈接的源文件大小。
-S或--separate-dirs 顯示個(gè)別目錄的大小時(shí),并不含其子目錄的大小。
-X文件>或--exclude-from=文件> 在文件>指定目錄或文件。
--exclude=目錄或文件> 略過指定的目錄或文件。
-D或--dereference-args 顯示指定符號鏈接的源文件大小。
-H或--si 與-h參數(shù)相同,但是K,M,G是以1000為換算單位。
-l或--count-links 重復(fù)計(jì)算硬件鏈接的文件。
實(shí)例
1、顯示目錄或者文件所占空間:
[root@localhost test]# du
608 ./test6
308 ./test4
4 ./scf/lib
4 ./scf/service/deploy/product
4 ./scf/service/deploy/info
12 ./scf/service/deploy
16 ./scf/service
4 ./scf/doc
4 ./scf/bin
32 ./scf
8 ./test3
1288 .
2、只顯示當(dāng)前目錄下面的子目錄的目錄大小和當(dāng)前目錄的總的大小,最下面的1288為當(dāng)前目錄的總大小
顯示指定文件所占空間:
復(fù)制代碼 代碼如下:
[root@localhost test]# du log2012.log
300 log2012.log
3、查看指定目錄的所占空間:
[root@localhost test]# du scf
4 scf/lib
4 scf/service/deploy/product
4 scf/service/deploy/info
12 scf/service/deploy
16 scf/service
4 scf/doc
4 scf/bin
32 scf
4、顯示多個(gè)文件所占空間:
[root@localhost test]# du log30.tar.gz log31.tar.gz
4 log30.tar.gz
4 log31.tar.gz
只顯示總和的大小:
[root@localhost test]# du -s
1288 .
[root@localhost test]# du -s scf
32 scf
[root@localhost test]# cd ..
[root@localhost soft]# du -s test
1288 test
下面是書生的一些補(bǔ)充資料:
說明
du 是disk usage的縮寫,主要用于總結(jié)每個(gè)文件的磁盤大小,以及統(tǒng)計(jì)多個(gè)文件
相關(guān)命令
df
簡單實(shí)例
我建立兩個(gè)文件
復(fù)制代碼 代碼如下:
$du --help>du.txt
$man du > mandu.txt
1. 查看文件大小
$du du.txt mandu.txt
如圖:
解釋:同時(shí)打印du.txt 和 mandu.txt的大?。J(rèn)單位是字節(jié)bytes)
2. 查看一個(gè)目錄下文件大小,
$du –a tmp/
如圖:
解釋: 圖中 tmp/ 就是目錄 大小為84比特
3. 統(tǒng)計(jì)幾個(gè)文件的大小
$du –c du.txt mandu.txt
du的help
用法:du [選項(xiàng)]... [文件]...
或:du [選項(xiàng)]... --files0-from=F
總結(jié)每個(gè)文件>的磁盤用量,目錄則取總用量。
長選項(xiàng)必須用的參數(shù)在使用短選項(xiàng)時(shí)也是必須的。
說明
-a, --all 打印所有文件,包括目錄
--apparent-size 打印可見內(nèi)容的大小,比du命令準(zhǔn)確。雖然通常apparent size更小一些,但由于硬盤碎片等原因,可能會比du更大
-B, --block-size=SIZE 用戶自己定義單位(b,k,m)
-b, --bytes 單位為1byte 等同于 `--apparent-size --block-size=1'
-c, --total 統(tǒng)計(jì)大小
-D, --dereference-args dereference FILEs that are symbolic links 用于軟連接文件
--files0-from=F 統(tǒng)計(jì)文件大小,被統(tǒng)計(jì)文件文件要以NUL結(jié)尾,并且在文件F中被指定名稱
-H 單位1000而不是1024;等同于 --dereference-args (-D)
-h, --human-readable 按照易讀性方式打印(e.g., 1K 234M 2G)
--si like -h, but use powers of 1000 not 1024
-k like --block-size=1K
-l, --count-links 如果是硬鏈接就統(tǒng)計(jì)多次
-m like --block-size=1M
-L, --dereference 查看所有軟連接
-P, --no-dereference 不查看軟連接文件(默認(rèn))
-0,(這里是“零”) --null 每個(gè)輸出行用0字節(jié)代替新起一行(同時(shí)輸出多個(gè)文件時(shí)候,就是一行)
-S, --separate-dirs 不包括子目錄大小
-s, --summarize 只顯示總大小(-c 在這里還會有一些其他統(tǒng)計(jì)信息)
-x, --one-file-system 跳過其他文件系統(tǒng)的分支
-X FILE, --exclude-from=FILE 排除符合正則表達(dá)式FILE的文件.
--exclude=PATTERN Exclude files that match PATTERN.
--max-depth=N 打印目錄下所有文件 (or 文件, 用命令 --all),只有 目錄深度少于等于 參數(shù)命令N; --max-depth=0 等同于 --summarize 即全部
--time 顯示所有文件的最后修改時(shí)間,包括子目錄的
--time=WORD
用以下單詞(WROD)代替顯示最后修改時(shí)間的輸出:atime, access, use, ctime or status
--time-style=STYLE
show times using style STYLE:
full-iso, long-iso, iso, +FORMAT
FORMAT is interpreted like `date'
--help 顯示此幫助信息并退出
--version 輸出版本信息并退出
[大小]可以是以下的單位(單位前可加上整數(shù)):
kB 1000,K 1024,MB 1000000,M 1048576,還有 G、T、P、E、Z、Y
講解help
有關(guān)-0(這里是零)
看看區(qū)別:
$du –a ./
如圖:
$du –a0 ./
加上-0,效果如圖:
實(shí)例:
1.$du -b du.txt
文件太小,你可以用-m, -k,甚至自己定義大小
效果如圖:
2.$du –ak dir | sort –nrk 1 | head
-a 列出所有 -k是用1kb單位, sort排序,head打印前10個(gè),dir是目錄
如圖:
收尾
這里簡單說明一下,如果直接復(fù)制文中的命令,注意符號“-” 實(shí)際上被變了,需要修改一下。
本文出自 “書生” 博客
您可能感興趣的文章:- powershell遠(yuǎn)程管理服務(wù)器磁盤空間的實(shí)現(xiàn)代碼
- 一天一個(gè)shell命令 linux好管家--磁盤--df命令詳解
- Powershell中獲取所有磁盤盤符的方法
- 使用shell腳本采集系統(tǒng)cpu、內(nèi)存、磁盤、網(wǎng)絡(luò)等信息
- 獲取磁盤IO與系統(tǒng)負(fù)載Load的shell腳本
- 監(jiān)視磁盤使用情況的Shell腳本(本地+遠(yuǎn)程)
- shell腳本實(shí)現(xiàn)磁盤監(jiān)控系統(tǒng)