分享 [脚本] 看看你的 home 都有些什么目录, 分别有多大, 有多少个文件.

zw963 · 2012年08月30日 · 最后由 zw963 回复于 2012年08月31日 · 3261 次阅读

刚刚写了个脚本,统计了下自己 HOME 下的文件数量。不统计不知道,垃圾文件和目录数量是惊人的。

下面是脚本,适用于 linux 及 MAC, 直接复制并另存为一个文本文件,例如:ds, 然后把这个文件扔到 PATH 里,chomd +x ds 即可。

BTW: 如果 HOME 下文件很多,空间很大,会很慢的,你可以去喝一杯茶了...

#!/bin/sh

IFS="
"
printf '%10s\t%-10s\t%-10s\n' "Size" "File Quantity" "Filename detail"
echo
for i in $(du -h -d1); do
    x=$(echo "$i"|cut -f1)
    y=$(echo "$i"|cut -f2|xfind|wc -l)
    z=$(echo "$i"|cut -f2|xargs ls -1dalh --color=auto)
    # echo -e "$x\t\t$z\t\t$y"
    printf '%10s\t%-10s\t%-10s\n' "$x" "$y" "$z"
done|sort -h -k1,2

find . -type f | wc -l

不可以吗,257804 个文件

查看文件夹下文件大小

du -sh * | sort -k1nr

681M work 339M build 204K Desktop 180M pdf 32M Documents 22G game 11G Movies 8.5M goagent 4.5G Library 3.4G backup 2.3G Downloads 2.1M config 1.9G Music 1.9G Pictures 0B Public

加了-n 选项为啥排序还是按数字大小排序?

我这个是清理垃圾用的,主要为了查看那个目录很大,那个目录文件很多,

会有下面的效果,分别是大小, 文件数量, 文件细节 其实就是把几个命令堆到一块儿显示而已。

232K        5           drwx------ 5 root root 4.0K Nov 10  2011 ./.scim
272K        3           drwxr-xr-x 2 root root 4.0K Jul 24 11:10 ./Pictures
292K       22           drwxr-xr-x 6 root root 4.0K Oct 20  2011 ./News
336K        1           drwxr-xr-x 2 root root 4.0K Apr 11 18:16 ./.gstreamer-0.10
428K        33          drwxr-xr-t 5 root root 4.0K Oct 29  2011 ./.texmf-var
456K        12          drwxr-xr-x 22 root root 4.0K May  9 14:50 ./.gimp-2.6
520K           56       drwxr-xr-x 4 root root 4.0K Nov 10  2011 ./GNUstep

#1 楼 @diudiutang

sort -h 就可以了。

貌似 find 之后 wc 显示的不准,刚用 tree 看了下是

35554 directories, 152575 files

#1 楼 @diudiutang 因为 du 里用了 h,所以输出 GMK 之类了,n 不懂那个的

#6 楼 @reus 嗯,刚才查了下是这个问题,不过不加 h 会显示 bite 值,看起来不直观

我直接用磁盘分析器,主要是喜欢那个展现方式,很直观

#4 楼 @Saito #8 楼 @fsword

Mac 这方面真像 Windows, Windows 下有个叫做 DiskState 的小软件,挺老了,我用了很久,界面很直观,我用了很久。不过在我这个最古老的 linux 版本 (Slackware) 下面,很多事情都得自己去想办法去解决。

有图形界面的东西这很好,不过人就会变懒了,就不会自己去琢磨 bash script 以及那些常用的的命令去实现一些很有自定义特色的功能,在这点上来说,诸如 Mac 或者 Ubuntu 之类的发布版,是不利于学习的。就像当年我用 Windows 一样,好多年,内部机理还是啥也不懂,因为你根本不需要去懂它。

我虽然其他必要原因,从没有考虑从 linux 换到 Mac, 但是我始终认为,随着越来越熟悉,图形界面对于 (Web) 开发者来说,其实是不重要的,甚至根本就是个累赘,而除了图形界面,Mac 系统相比较 linux 留下的没有什么了。

需要 登录 后方可回复, 如果你还没有账号请 注册新账号