30 个版本 (3 个稳定版本)

1.1.1 2024年7月17日
1.0.0 2024年3月25日
0.9.0 2024年1月9日
0.8.6 2023年5月5日
0.3.1 2018年5月9日

#47 in 文件系统

Download history 724/week @ 2024-05-04 645/week @ 2024-05-11 605/week @ 2024-05-18 594/week @ 2024-05-25 626/week @ 2024-06-01 640/week @ 2024-06-08 590/week @ 2024-06-15 541/week @ 2024-06-22 705/week @ 2024-06-29 897/week @ 2024-07-06 2351/week @ 2024-07-13 1291/week @ 2024-07-20 1081/week @ 2024-07-27 1366/week @ 2024-08-03 2535/week @ 2024-08-10 2841/week @ 2024-08-17

8,162 每月下载量

Apache-2.0

135KB
3K SLoC

Rust 2.5K SLoC // 0.0% comments BASH 177 SLoC PowerShell 110 SLoC // 0.0% comments Elvish 91 SLoC Shell 59 SLoC // 0.1% comments

Build Status

Dust

du + rust = dust. Like du but more intuitive.

为什么

因为我想要一个简单的方法来查看我的磁盘使用情况。

演示

Example

安装

Cargo 打包状态

  • cargoinstall du-dust

🍺 Homebrew (Mac OS)

  • brewinstall dust

🍺 Homebrew (Linux)

  • brewinstall dust

Pacstall (Debian/Ubuntu)

  • pacstall-I dust-bin

Anaconda (conda-forge)

  • conda install-c conda-forge dust

deb-get (Debian/Ubuntu)

  • deb-get install du-dust

Windows

  • scoop install dust
  • Windows GNU 版本 - works
  • Windows MSVC - requires: VCRUNTIME140.dll

下载

  • Releases 下载 Linux/Mac 二进制文件
  • 解压文件: tar -xvf _downloaded_file.tar.gz
  • 将文件移动到可执行路径: sudo mv dust /usr/local/bin/

概述

Dust 的目的是为您提供即时概览,显示哪些目录正在使用磁盘空间,而无需排序或头部。Dust 将打印最多一条 '没有权限' 消息。

Dust 将列出略小于终端高度的最大的子目录或文件,并会智能地递归到树中找到更大的目录。无需使用 '-d' 标志或 '-h' 标志。最大的子目录将被着色。

条形图上的不同颜色:这些代表组合的树层次结构和磁盘使用情况。灰色阴影用于指示子文件夹所属的父文件夹。例如,看一下上面的截图。.steam是一个占用44%空间的文件夹。从.steam条形图向上延伸的是一条浅灰色线条。所有这些文件夹都在.steam内部,所以如果你删除了.steam,所有这些内容也会消失。

使用方法

Usage: dust
Usage: dust <dir>
Usage: dust <dir>  <another_dir> <and_more>
Usage: dust -p (full-path - Show fullpath of the subdirectories)
Usage: dust -s (apparent-size - shows the length of the file as opposed to the amount of disk space it uses)
Usage: dust -n 30  (Shows 30 directories instead of the default [default is terminal height])
Usage: dust -d 3  (Shows 3 levels of subdirectories)
Usage: dust -D (Show only directories (eg dust -D))
Usage: dust -F (Show only files - finds your largest files)
Usage: dust -r (reverse order of output)
Usage: dust -o si/b/kb/kib/mb/mib/gb/gib (si - prints sizes in powers of 1000. Others print size in that format).
Usage: dust -X ignore  (ignore all files and directories with the name 'ignore')
Usage: dust -x (Only show directories on the same filesystem)
Usage: dust -b (Do not show percentages or draw ASCII bars)
Usage: dust -B (--bars-on-right - Percent bars moved to right side of screen)
Usage: dust -i (Do not show hidden files)
Usage: dust -c (No colors [monochrome])
Usage: dust -C (Force colors)
Usage: dust -f (Count files instead of diskspace)
Usage: dust -t (Group by filetype)
Usage: dust -z 10M (min-size, Only include files larger than 10M)
Usage: dust -e regex (Only include files matching this regex (eg dust -e "\.png$" would match png files))
Usage: dust -v regex (Exclude files matching this regex (eg dust -v "\.png$" would ignore png files))
Usage: dust -L (dereference-links - Treat sym links as directories and go into them)
Usage: dust -P (Disable the progress indicator)
Usage: dust -R (For screen readers. Removes bars/symbols. Adds new column: depth level. (May want to use -p for full path too))
Usage: dust -S (Custom Stack size - Use if you see: 'fatal runtime error: stack overflow' (default allocation: low memory=1048576, high memory=1073741824)"),
Usage: dust --skip-total (No total row will be displayed)
Usage: dust -z 40000/30MB/20kib (Exclude output files/directories below size 40000 bytes / 30MB / 20KiB)
Usage: dust -j (Prints JSON representation of directories, try: dust -j  | jq)
Usage: dust --files0-from=FILE (Reads null-terminated file paths from FILE); If FILE is - then read from stdin

配置文件

Dust有一个配置文件,可以在此设置上述选项。可以是:~/.config/dust/config.toml或者~/.dust.toml

$ cat ~/.config/dust/config.toml
reverse=true

替代方案

注意:dust和gdu在计算文件大小方面略有不同。在dust中,每个硬链接都被计算为使用file_length空间。在gdu中,只计算第一个条目。

依赖关系

~11–23MB
~333K SLoC