zoukankan      html  css  js  c++  java
  • 关于右键属性与du -sh显示的文件大小不一致的解决


    du -sh filename(其实我们经常用du -sh *,显示当前目录下所有的文件及其大小,如果要排序再在后面加上 | sort -n)
     
    关于右键属性与du -sh显示的文件大小不一致的解决:
    总之:我的理解就是du查到的是实际硬盘上的block大小,包括很多隐藏文件,软,硬链接,以及由于磁盘格式划分等等的问题,导致了不一致,
    右键属性相当于
    du --exclude='.*' --exclude='*~' -b -D -s 你的文件或文件夹  及除开那些多余的东西。
    而du -sh 则是全部显示了出来,所以,他显示的要大。
     
     
    (百度到的,我认为合理)
     
    这里有几方面的问题, 导致有好几种计算文件大小方法.

    1. 内容大小 和 磁盘(或者别的什么储存器)占用大小, 比如

    # 文件内容是 三个字母加一个换行

    ~/tmp$ cat abc.txt
    efg


    # 内容大小是 4 字节(--apparent-size 计算内容大小, --block-size=1 以字节位单位)
    ~/tmp$ du --apparent-size --block-size=1 abc.txt
    4 abc.txt


    # 占用磁盘空间4096字节, 这个结果跟磁盘格式密切相关
    ~/tmp$ du --block-size=1 abc.txt
    4096 abc.txt

    2. 符号链接(symbolic links 或 soft links 或 symlinks)的问题

    # 这里有个指向刚才那个文件的符号链接

    ~/tmp$ ls -nl link_abc.txt
    lrwxrwxrwx 1 1000 1000 7 Jan 28 18:34 link_abc.txt -> abc.txt


    # 符号链接本身不占用"普通的"磁盘空间, 就像一个空文件一样.
    ~/tmp$ du --block-size=1 link_abc.txt
    0 link_abc.txt


    # 不过内容大小还是有的, 实际上是 "abc.txt" 共7个字符.
    ~/tmp$ du --apparent-size --block-size=1 link_abc.txt
    7 link_abc.txt
    ~/tmp$ 


    # 另外要查看指向的文件的大小的话应该这样 (跟最开始一样)
    ~/tmp$ du --apparent-size --block-size=1 -L link_abc.txt
    4 link_abc.txt


    3. 隐藏文件的问题

    英文句点"."开头的文件 或者 波浪号"~"结尾的文件属于隐藏文件.

    ~/tmp$ ls
    abc.txt link_abc.txt

    ~/tmp$ ls -A
    abc.txt link_abc.txt .xxx

    (不过好像对于 ls 命令来说 "*~" 不属于隐藏文件)

     
    4.文件夹本身占用空间的问题

    # du 是要算上文件夹本身大小的

    ~/tmp$ du --exclude='.*' --exclude='*~' --apparent-size -s -b -D ~/tmp
    4107 /home/xyy/tmp
    # 系统文件管理 没算上(右键属性)
     
     
    Gnome 默认的文件管理器 nautilus 统计文件大小的时候忽略隐藏文件(对应du --exclude='.*' --exclude='*~'), 会跟入一层符号链接(对应 du -D), 显示文件内容大小(而不是磁盘占用), 并以1000进位(du -b).


    最后合起来就是
    du --exclude='.*' --exclude='*~' -b -D -s 你的文件或文件夹

     
  • 相关阅读:
    Do You See Me? Ethical Considerations of the Homeless
    ELDER HOMELESSNESS WHY IS THIS AN ISSUE?
    Endoflife support is lacking for homeless people
    html内联框架
    html字体
    html块 div span
    html列表
    html表格
    SQL Server管理员专用连接的使用   作为一名DBA,经常会处理一些比较棘手的服务无响应问题,鉴于事态的严重性,多数DBA可能直接用“重启”大法,以便尽快的恢复生产环境的正常运转,但是多数情况
    如何配置最大工作线程数 (SQL Server Management Studio)
  • 原文地址:https://www.cnblogs.com/iamhenanese/p/5514134.html
Copyright © 2011-2022 走看看