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 你的文件或文件夹

 

关于右键属性与du -sh显示的文件大小不一致的解决的更多相关文章

  1. df -h和du -sh显示结果不一样的原因及解决

    一.背景:一台2T硬盘的mysql服务器,保存电话的CDR信息.按照历史数据的水平,一个月能生成20+GB的文件.然而短短的半年时间,满了?! 登录服务器看谁占了这么大的空间?好吧,slow-quer ...

  2. df与du查看磁盘空间使用不一致的解决方法

    近一段时间,某台服务器的磁盘空间使用不太正常,与其他的服务器相比,严重超出磁盘空间使用 使用df与du相关命令查看,具体结果如下: du -hFilesystem       Size  Used A ...

  3. 41、解决du与df统计不一致的解决方法

    41.1.案例说明: 通过df -hT和du -sh /.du -h --max-depth=1 /命令 发现磁盘的使用不量不一致,使用'df -hT'命令查看磁盘的使用量要 比使用'du -sh / ...

  4. windows2003 IIS6.0右键属性没有asp.net选项卡的解决办法

    windows2003 IIS6.0右键属性没有asp.net选项卡的解决办法 1,如果是只安装了.net framework 1.1 在iis中是不显示那个选项卡的.默认就会支持asp.net1.1 ...

  5. Linux命令(2) - 查看目录和文件大小: du -sh

    [root@hadoop01 ~]# ll total 156 drwxr-xr-x. 18 root root 4096 Jan 5 05:05 apps -rw-r--r--. 1 root ro ...

  6. df -h统计的信息与du -sh不一致的原因(转)

    有时候会遇到这样的问题:df -h统计一个目录,显示有约100M可用空间,使用了5G:而用du -sh统计该目录下的文件大小,却发现总共才占用了1G.也就是说,二者统计结果差距巨大. 例如: 1.df ...

  7. Linux的磁盘系统和文件系统显示的文件大小为什么不一样(du指令和ls指令的区别)

    写在前面:本博客为本人原创,严禁任何形式的转载!本博客只允许放在博客园(.cnblogs.com),如果您在其他网站看到这篇博文,请通过下面这个唯一的合法链接转到原文! 本博客全网唯一合法URL:ht ...

  8. 诡异的磁盘空间100%报警分析得出df -h与du -sh的根本性差别

    前言:早晨磁盘报警刚清空完tomcat和nginx日志,使用的命令是类似echo "" > show_web-error.log或者> show_web-debug.l ...

  9. shell 文件夹总大小 du -sh 文件夹

    du -sh 文件夹 du [-abcDhHklmsSx] [-L <符号连接>][-X <文件>][--block-size][--exclude=<目录或文件> ...

随机推荐

  1. spring定时任务(@Scheduled注解)

    (一)在xml里加入task的命名空间 xmlns:task="http://www.springframework.org/schema/task" http://www.spr ...

  2. 有序列表ol和定义列表dl,dt,dd

    有序列表是一种讲究排序列表结构,使用<ol>标签定义,其中包含多个<li>列表项目.一般网页设计中,列表结构可以互用有序或者无序类表标签.但是,在强调项目排序栏目中,选用有序列 ...

  3. java后台向路径发送请求获得相应参数

    从java后台向一路径发送请求,获得响应的参数,put get post ,还有一个返回URL的工具类,方便代码灵活修改 import java.io.BufferedReader; import j ...

  4. properties配置文件编码问题

    properties配置文件编码问题 person.last-name=哈哈 person.age=18 person.bitrh=2019/01/12 person.boss=false perso ...

  5. EF 多种查询方式

    比较常用的查询方式linq to entity,这里先看一种写法: var query = (from d in testContext.Set<DepartPerson>() //查询和 ...

  6. php判断是否isPhone、is_weixin

    protected function isPhone(){ $agent = strtolower($_SERVER['HTTP_USER_AGENT']); //pc请求头信息数组 $pc_arr= ...

  7. SQL Server删除表及删除表中数据的方法

    删除表的T-SQL语句为: drop table <表名> drop是丢弃的意思,drop table表示将一个表彻底删除掉. 删除表数据有两种方法:delete和truncate. de ...

  8. Review——JS的异步与同步

    一.概念 同步(synchronous):指在js的主线程上,所有任务被依次执行: 异步(asynchronous):指任务不进入主线程,进入任务队列(task):当“任务队列”通知主线程,异步任务才 ...

  9. css的定位笔记

    relative:相对定位. 1. 不论其父元素和相邻元素的position是什么,均相对于自身原来的位置来偏移. 2. 不会脱离文档流,其原来的位置依然保留着,不会被文档中其他的元素占用. 3. 原 ...

  10. 格式化字符串漏洞利用实战之 0ctf-easyprintf

    前言 这是 0ctf 的一道比较简单的格式化串的题目. 正文 逻辑非常简单 do_read 可以打印内存地址的数据,可用来 泄露 got. leave 格式化字符串漏洞. printf(s) 直接调用 ...