• ls命令显示的total你知道代表着什么吗?


     

      今天我无意间在用ls命令的时候发现显示的内容里的total,这个total代表着什么,引起了我的疑惑。

    接下来开始解开它的神秘面纱。

    total后面的数字是指当前目录下所有文件所占用的空间总和,它是怎么计算的,我们先来看看每个文件的大小。(文件的单位是bytes)

    我们将所有的文件大小加起来也只有3536bytes ,是远远没有24kbytes的啊。

    但是我们需要知道的是每个文件系统都规定的一个块(block)的大小,我们可以通过命令getconf PAGESIZE 命令来查看数据块规定的大小。

    [root@vultr ssh-batch-believe]# getconf PAGESIZE
    4096

    我们可以看到我们的一个块(block)的大小是4096bytes,我们还需要知道一个块(block)只可以容纳一个文件。所以上面的,每个文件都需要一个块(block),上面有6个文件,也就是6个块(block),也就是  6*4096 bytes 大小。 6*4096 bytes 也就是24k.和total上的值符合了。

    我们这里再举个例子,我们添加了一个大小是6368 bytes名为test的文件,我们可以在看看total的值。

    total的值是32,也就是增加了8kbytes,两个块(block),我们实际的增加的文件大小为6368,这里是因为一个block是放不下这个文件的,只有两个block才可以放下,虽然放完这个文件后,block里还有剩余空间,但是我们前面说到一个块(block)只可以容纳一个文件。所以后面如果新添加的文件只有用一个新的block.

    最后我们还有一个很方便的查看和计算total的办法。就是使用 ls 命令的 -s 选项。

    -s   以块大小为单位列出所有文件的大小

    total的值就是第一列的值之和。

     

     

  • 相关阅读:
    字符串截取例子 大小写转换 拼接例子 把oc转成c语言
    字符串比较 是否相同 大小 创建字符串 例子
    数组于字典:把多个字典放到数组中
    考核7
    Delphi 单元不能被循环引用
    Delphi ADOQuery无法更新定位行问题(其它数据库访问控件类似)
    SQL远程服务器操作数据
    s​p​c​o​m​m​属​性​详​解
    dxSkinController动态调入皮肤
    RegisterClass与GetClass
  • 原文地址:https://www.cnblogs.com/operationhome/p/9177151.html
Copyright © 2020-2023  润新知