00:00
到目前为止,我们已经学习了很多很多命令了啊,那整体来看的话,我们对于文件和目录的操作应该说已经做到了非常的熟悉,比如我们一开始7.2节主要就介绍文件目录相关的一些基本操作,那到后面呢?7.4 7.5、7.63节内容,其实我们会发现主要就是考察用户用户组,他们到底对文件和目录有什么样的操作权限啊,就是我们划分不同的用户,不同的用户组,进行用户用户组管理的时候,最终是要体现在他们对于文件和目录的操作权限上啊,所以这一部分呢,我们最后也是体现到了最终的文件啊,那后边的7.77.8我们介绍的是搜索查找以及压缩解压,这也是针对文件和目录一些特殊的操作,所以从这里我们也可以看得出来,Linux里边一切接文件啊,所有的我们基本的命令其实都是围绕着文件和目录来进行的。
01:04
那前面我们其实也已经介绍了,对于查找当前目录下边到底有什么样的文件和子目录,诶,那这个就是一个LS命令,非常的方便,如果说我们想看到当前所有文件的详细信息的话啊,那我们也可以LL或者是LS-L把当前的信息全部显示出来,但是我们会发现啊,这种显示方式呢,我们只能看到当前目录下边一级的所有的目录和文件,那如果说当前它的子目录里边又有嵌套的子目录,子目录里边还有子目录,还有很多很多层级,这个时候我们就不方便直接把它看到了啊,那对于这种显示呢,其实Linux里边有另外的一个小工具,可能有同学也。知道啊,见过,就是所谓的tree。就是我们以一个标准的树状目录。把所有的。
02:00
当前我们能感兴趣的啊,想要列举出的目录下边的所有子目录层级全部列出来啊,当然了,这个默认的三七里边可能是没有这个工具的,那如果大家需要安装的话,那就敲样。Install tree。这就是表示安装tree这个工具啊,那当然了,我现在已经安装安装过了,所以说现在就不需要再安装了,大家如果这样安装的过程当中,可能需要有一些交互式的输入,比方说他问你是否要怎么怎么做,安装什么什么东西啊,往往我们就是输入一个Y,然后回车就可以了啊,那一步一步就可以把这个工具安装完,安装完了之后呢,我们就可以tree后边加上当前的目录,所要看的目录,诶现在我们就一目了然啊,你看当前我们下面所有的东西。所有的文件列在这里啊,所有的目录,呃,当然这里目录我们看到它是因为都是汉字嘛,所以这里的显示其实是最后这个unicode啊,这个不重要,但是我们能够看到这个下边所有的文件信息以及子目录信息,如果有的话,都可以非常清晰的列举在这里啊,所以呃,这有了这个tree工具之后,那查找查看我们当前一个目录下边的所有的层级结构,这个就不成问题了啊,这个看的非常清晰。
03:20
不过我们还有另外一个需求,就是在实际的操作过程当中,我们不光是想要知道当前的目录结构,嗯,我们知道随着使用的时间越来越长啊,文件目录越来越多,那一方面是我们这个层级结构会越来越复杂,另外一方面呢,所占用的。硬盘空间也会越来越大,那我们剩下的资源就会越来越小了,所以作为对于这个系统有管理和维护权限的一个管理员,那我们随时都要关心当前的硬盘占用情况,诶那我们就想,那怎么样看当前这个硬盘占用情况呢?呃,最简单的一个想法,当然是之前我们这不是可以LS啊,或者说LL啊,我们再加上一个H,可以很明显的看出当前目录下边每一个文件到底有多大吗?诶,这个是一个很好的方式,这种方式呢?呃,上面我们还有一个总用量啊,可以看到当前这个目录就占了81兆,诶那有同学可能就想到了,那如果要这么说的话,我直接LS。
04:24
杠LH,然后直接去判断一下我们的根目录不就可以了吗?诶,但是我们会看到如果直接看根目录的话,它的总用量只有32K。哎,这是为什么呢?因为我们在当前去统计这个总用量的时候,它只是简单的把这里所有列举出来的这个大小做了一个叠加,而这里边列举大小的时候呢,并不是嵌套的把每一个目录的总大小都放在一起算的。那比如说这里的root,我们看本来root里边有很多这个几十兆的东西,而在这里呢,这个root目录看起来只有4.0K啊,它其实算的就只有当前这个目录,这个文件夹本身当成一个文件来看的话,它的大小是多少?
05:11
哎,所以如果要这么看的话,显然这个就看不准了啊,所以我们更加希望的是。直接就能有单独的一个命令,它直接敲一个命令就可以直接统计出当前目录里边所有内容,包括它下面的子文件,子文件夹所有内容占用硬盘空间大小啊,那这个命令Linux当然是给我们提供了的,这就是所谓的。Du这样一个命令,好啊,那我们可以直接Du一下,诶,在这里我们会看到啊,它是直接把我们这个目录下边所有嵌套的子目录,子文件夹,包括我们看到这里还有隐藏文件,把隐藏文件也要涵盖里边全部都列出来,最后有一个总计。哎,所以这就是我们查看当前目录下所有占据空间大小的一个基本的命令。
06:06
当然了,Du这么看的话,我们会看到这里这个太乱了啊,所有东西它都列出来,呃,我们其实往往可能只希望就是用一个比较简单的方式看一下当前到底有多大,哎,其实我们也看到这里最后一行,这就是当前的大小啊,当然了它会有更多的可选的一些选项啊,能让我们的这个输出更加的友好一些,接下来我们就来看一看这个命令到底是怎么用的,那Du它其实全称啊,就是disc usage啊,就是我们所说的啊,磁盘目前所被占用的情况到底占了多大,那基本的用法呢,就是Du后边直接可以跟上一个目录或者一个文件来考察一下当前目录或者文件的大小,诶,当然我们知道这个文件就没必要了,我们直接LL就能看到它大小嘛,所以一般情况后边跟着的都是一个目录。然后我们说一下它可以跟上的选项,首先是有一个杠H啊,其实我们知道H就是所谓的human readable啊,就是说以人类更加容易阅读的方式来显示,那就是不要显示我们这里边哎完整的这个字节数啊,而是你要显示成哎到底是几K几兆几G,这样去有一个单位去显示就会更合理一点,呃,然后呢,还有一个就是杠A,这里专门要注意的就是我们当前使用Du命令的时候呢,它默认并不是。
07:32
把所有的。文件和目录大小统计起来,就所有的都都列举的这里,如果我们仔细观察的话就会发现,诶,你看这里有这个公共,然后有这些其他的这些子目录啊,还有剩下的就全都是点儿,都是我们当前的隐藏文件或者文件夹,诶那我们之前本来下面还有几个很大的文件,还有这个打包压缩之后的文件,这里面都没有显示出来。所以如果你想要统计所有的文件和子目录的话,那必须还要加上一个杠A参数啊,那杠A就是指的是二嘛,不仅查看子目录,还要包括文件的大小。
08:12
另外还有一个参数是杠C,这个杠C的话比较简单,就是所有的文件和子目录大小都显示出来之后,最后再显示一个总和啊,有时候我们可能会觉得这个没多大用,因为像我们这里最后统计完成之后,其实最后一行它统计的就是我们当前点儿,这不就是当前目录本身吗?啊,他统计他自己的大小,其实也就可以认为就是总计的结果了啊,当然如果真正要总计的话,我们这里应该是。加上A,然后H更加容易阅读一点,哎,我们可以看到当前这样统计起来是166兆啊,这就是我们当前统计的一个结果。呃,当然了,呃,照着现在的这种输出情况,我们会看到上面输出的内容还是太多了,那能不能更加简洁一点呢?哎,那首先如果说我们加一个C的话,我们会发现啊,它跟没多大区别,就多了一个总用量。
09:07
跟我们直接统计这个点当前目录的大小其实是一样的,那如果说我们这里。直接给一个S的话。给一个S参数的话,它的统计效果就是只统计当前的总量,我们注意一下,那么就不会再去显示它下边的任何的子目录和文件了啊,那这样的话就相当于我们只显示一行,就是当前整个目录的总大小。啊,那当然了,有时候我们会发现这个太又有点太简略了,上面的这个呢,又有点太详细了,那我们能不能取一个折中的方案呢?啊,也是有的,这个折中的方案就是加上一个杠杠max dex这样一个参数,那就指的是当前的最大深度。也就是说我们当前统计它的这个子目录的时候,到底统计到第几层啊,那一般情况呢,我们这里就是给一个等于一,这个效果就相当于是我们可以看一下。
10:07
杠杠max depth。等于一,然后后边告。A。我们可以看到这样的话,就只显示我们当前下边一级的所有的子目录或者子文件啊,那那当前所有的东西都做一个统计,最终看到总大小是166兆啊,当然这个有时候也会把它给成不同的参数啊,如果给二的话,我们统计的个数就会更多,因为它会包含下边的第二级的子目录啊,那如果说这里给零的话,那其实就相当于等于我们上边给到的这个杠S只显示总和了。这就是关于使用Du命令去查看当前文件和目录占用磁盘空间大小这样一种用法。
我来说两句