Linux之du命令
du命令的作用是估计文件系统的磁盘已使用量,常用于查看文件或者目录所占的磁盘量。du命令也是查看使用空间的,但是与df命令不同的是Linuxdu命令是对文件和目录磁盘使用的空间的查看,还是和df命令有一些区别的。命令语法
du〔选项〕〔文件〕命令选项a,all显示目录中个别文件的大小。B,blocksize大小使用指定字节数的块b,bytes显示目录或文件大小时,以byte为单位。c,total除了显示个别目录或文件的大小外,同时也显示所有目录或文件的总和。D,dereferenceargs显示指定符号链接的源文件大小。H,si与h参数相同,但是K,M,G是以1000为换算单位。h,humanreadable以K,M,G为单位,提高信息的可读性。k,kilobytes以KB(1024bytes)为单位输出。l,countlinks重复计算硬件链接的文件。m,megabytes以MB为单位输出。L符号链接,dereference符号链接显示选项中所指定符号链接的源文件大小。P,nodereference不跟随任何符号链接(默认)0,null将每个空行视作0字节而非换行符S,separatedirs显示个别目录的大小时,并不含其子目录的大小。s,summarize仅显示总计,只列出最后加总的值。x,onefilexystem以一开始处理时的文件系统为准,若遇上其它不同的文件系统目录则略过。X文件,excludefrom文件在文件指定目录或文件。apparentsize显示表面用量,而并非是磁盘用量;虽然表面用量通常会小一些,但有时它会因为稀疏文件间的洞、内部碎片、非直接引用的块等原因而变大。files0fromF计算文件F中以NUL结尾的文件名对应占用的磁盘空间如果F的值是,则从标准输入读入文件名exclude目录或文件略过指定的目录或文件。maxdepthN显示目录总计(与all一起使用计算文件)当N为指定数值时计算深度为N,等于0时等同summarizesi类似h,但在计算时使用1000为基底而非1024time显示目录或该目录子目录下所有文件的最后修改时间timeWORD显示WORD时间,而非修改时间:atime,access,use,ctime或statustimestyle样式按照指定样式显示时间(样式解释规则同date命令):fulliso,longiso,iso,FORMAThelp显示此帮助信息并退出version显示版本信息并退出显示目录的大小du0。lib12。binrumenz12。bin0。sbindoc0。sbininfo4。sbin0。docjs0。doccss0。dochtmlrumenz0。dochtmlrumenzz4。dochtml4。doc0。rumenzlibtest0。rumenzlibinfo0。rumenzlib0。rumenz52。one104。
只显示当前目录下面的子目录的目录大小和当前目录的总的大小,最下面的104为当前目录的总大小显示指定文件所占的磁盘空间durumenz。txt查看指定目录的所占空间dusrc0srclib12srcbinrumenz12srcbin0srcsbindoc0srcsbininfo4srcsbin0srcdocjs0srcdoccss0srcdochtmlrumenz0srcdochtmlrumenzz4srcdochtml4srcdoc0srcrumenzlibtest0srcrumenzlibinfo0srcrumenzlib0srcrumenz52srcone104src
最后一行是整个目录src所占的磁盘空间查看指定目录的所占空间,提高信息的可读性duhsrc0srclib12Ksrcbinrumenz12Ksrcbin0srcsbindoc0srcsbininfo4。0Ksrcsbin0srcdocjs0srcdoccss0srcdochtmlrumenz0srcdochtmlrumenzz4。0Ksrcdochtml4。0Ksrcdoc0srcrumenzlibtest0srcrumenzlibinfo0srcrumenzlib0srcrumenz52Ksrcone104Ksrc
最后一行是整个目录src所占的磁盘空间,加上了单位,可读性变强显示多个文件所占的空间dua。logb。log0a。log0b。log只显示目录的总大小dusroot826036root
统计总用量(s代表summarize)只显示目录的总大小,提高可读性dushroot807Mroot文件和目录的大小都显示duahsrc0srclib0srcbinrumenz5。txt0srcbinrumenz3。txt8。0Ksrcbinrumenz5。txt4。0Ksrcbinrumenz1。txt12Ksrcbinrumenz12Ksrcbin0srcsbindoc0srcsbininfo4。0Ksrcsbinrumenz。txt4。0Ksrcsbin0srcdocjs0srcdoccss4。0Ksrcdochtml1。sh0srcdochtml1。txt0srcdochtml2。txt0srcdochtmlrumenz1。txt0srcdochtmlrumenz2。txt0srcdochtmlrumenz0srcdochtmlrumenzz1。txt0srcdochtmlrumenzz1。txt0srcdochtmlrumenzz0srcdochtml1link。txt4。0Ksrcdochtml0srcdocrumenz。txt4。0Ksrcdoc0srcrumenzlibtest0srcrumenzlibinfo0srcrumenzlib0srcrumenz4。0KsrcInfiniteLoop1。class4。0KsrcInfiniteLoop。class12Ksrcnohup。out4。0KsrcInfiniteLoop。java4。0Ksrcrumenz。txt4。0KsrcRumenz。txt0srcABC1。png0srcAB2。png0srcABC123。png0srcA123。png0srcb。log4。0Ksrconerumenz。tar。gz0srcone1。txt0srcone2。txt48Ksrconeetc。tar。gz52Ksrcone4。0Ksrca。log108Ksrc显示几个文件或目录各自占用磁盘空间的大小,还统计它们的总和duca。logb。log4a。log0b。log4total
加上c选项后,du不仅显示两个目录各自占用磁盘空间的大小,还在最后一行统计它们的总和。按照空间大小排序duahsrcsortnr108K。src108K。52K。srcone48K。srconeetc。tar。gz12K。srcnohup。out12K。srcbinrumenz12K。srcbin8。0K。srcbinrumenz5。txt4。0K。srcsbinrumenz。txt4。0K。srcsbin4。0K。srcRumenz。txt4。0K。srcrumenz。txt4。0K。srconerumenz。tar。gz4。0K。srcInfiniteLoop。java4。0K。srcInfiniteLoop。class4。0K。srcInfiniteLoop1。class4。0K。srcdochtml1。sh4。0K。srcdochtml4。0K。srcdoc4。0K。srcbinrumenz1。txt4。0K。srca。log0。srcsbininfo0。srcsbindoc0。srcrumenzlibtest0。srcrumenzlibinfo0。srcrumenzlib0。srcrumenz0。srcone2。txt0。srcone1。txt0。srclib0。srcdocrumenz。txt0。srcdocjs0。srcdochtmlrumenzz1。txt0。srcdochtmlrumenzz1。txt0。srcdochtmlrumenzz0。srcdochtmlrumenz2。txt0。srcdochtmlrumenz1。txt0。srcdochtmlrumenz0。srcdochtml2。txt0。srcdochtml1。txt0。srcdochtml1link。txt0。srcdoccss0。srcb。log0。srcbinrumenz5。txt0。srcbinrumenz3。txt0。srcABC1。png0。srcABC123。png0。srcAB2。png0。srcA123。png输出当前目录下各个子目录所使用的空间duhmaxdepthsrc0srclib12Ksrcbin4。0Ksrcsbin4。0Ksrcdoc0srcrumenz52Ksrcone108Ksrc