首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
拉勾
V2EX  ›  程序员

Linux 下怎样快速查看一个超大文件夹的文件总大小?

  •  
  •   alwayshere · 10 天前 · 3048 次点击

    一个超大文件夹"./attachments",内部嵌套 3 级目录,总共的子目录大约有几百万个,总体积大概有几百个 G,怎样以最快的速度查看总文件夹的文件大小?

    35 回复  |  直到 2018-12-08 08:05:59 +08:00
        1
    mxi1   10 天前 via iPhone
    du -sh .
        2
    alwayshere   10 天前
    @mxi1 这个实在太慢,半天出不来结果,“半天”不是形容词,是真的量词
        3
    whileFalse   10 天前
    先看看磁盘总大小,再减去其他文件夹的用量。。。
        4
    xfspace   10 天前 via Android   ♥ 2
    tree
    ncdu
        5
    aaa5838769   10 天前
    du 的命令
        6
    daigouspy   10 天前 via Android
    大小摆在那里,还能快到哪里去。
        7
    VisionTheta   10 天前   ♥ 1
    ncdu 特别快
        8
    Tink   10 天前
    du -h --max-depth=1

    --max-depth 为目录深度
        9
    chickplilita   10 天前   ♥ 1
    ncdu ,就是为这个事做的。
        10
    likuku   10 天前 via iPhone
    简单粗暴: 专门开一个分区 /卷 /磁盘 挂载到这个文件夹 /这个文件夹用独立分区存储

    df 就能瞬间给出结果了
        11
    generalbao   10 天前
    楼上的 Tink 正解 亲测 du -h --max-depth=1
        12
    x97bgt   10 天前   ♥ 1
    ncdu 应该很快
        13
    AaronLiang   10 天前
    rm -rf *, 文件夹就很小了 :)
        14
    vipdog73   10 天前
    du -sh PATH
        15
    CivAx   10 天前   ♥ 1
    du --max-depth=1 -h 在面对 “多层级的零散备份目录” 或者 “多层级图片业务目录(如实名认证业务)” 这种单文件夹内有成百个子文件夹,子文件甲中又有几十个子文件夹的目录结构的时候还基本跟死了无异,strace 能看到卡在某个路径一直在扫描很久没动静……
    所以还是推 ncdu
        16
    dot2017   10 天前
    du -sh 可以看文件夹大小啊
        17
    mattx   10 天前
    @generalbao #11 --max-depth 可以简化成 -d
        18
    qqpkat2   10 天前
    写脚本呗
        19
    mxi1   10 天前
    @alwayshere ^_^ 明白了
        20
    tumbzzc   10 天前 via Android
    du -sh attachments
        21
    GeruzoniAnsasu   10 天前 via Android
    剑走偏锋……算其它目录的总大小
        22
    jasonyang9   10 天前 via Android
    又学到一个新命令,ncdu
        23
    werty   10 天前
    rm -rf * && du -h -d 1
    速度一定不会慢 :)
        24
    jingrui   10 天前
    du --max-depth=1 -h /usr/
        25
    zhila   10 天前
    一直是把这种文件放到独立的分区里然后 df,ncdu 学到了。
        26
    iScout   10 天前 via Android
    ncdu 学到了
        27
    gesse   10 天前
    机械盘就没办法了
        28
    orm   10 天前 via iPhone
    ncdu 是的好软件
        29
    snail1988   10 天前
    ncdu 也没快太多,这是因为文件系统的设计导致的。。楼主想找一瞬间就读出大小的方法,常见的文件系统应该是不支持的。。。
        30
    vuuv   10 天前 via Android
    du 的 max-depth 只是控制汇总显示的粒度。
    当然逐行显示会因为有进展而让人觉得会快些,实际上加不加此参数,对整体耗时无影响。
        31
    msg7086   10 天前
    小文件多的话考虑用 Reiser 系。常见的 ext4 之流对几百万文件是怎么都不会快起来的,不用想了……
        32
    codehz   10 天前
    @vuuv #30 有,输出到 tty/管道也是阻塞的(
        33
    booxlp   10 天前 via iPhone
    du -h ./attachments — max-depth=1
        34
    luobo   10 天前
    mark mark
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   774 人在线   最高记录 4019   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.1 · 19ms · UTC 20:20 · PVG 04:20 · LAX 12:20 · JFK 15:20
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1