前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >在 Linux 上用 dust 代替 du命令

在 Linux 上用 dust 代替 du命令

原创
作者头像
用户1685462
修改2021-09-13 11:35:17
2.1K0
修改2021-09-13 11:35:17
举报
文章被收录于专栏:网站教程

如果你在 Linux 命令行上工作,你会熟悉 du 命令。了解像 du 这样的命令,可以快速返回磁盘使用情况,是命令行使程序员更有效率的方法之一。然而,如果你正在寻找一种方法来节省更多的时间,使你的生活更加容易,看看 dust,它是用 Rust 重写的 du,具有更多的直观性。

简而言之,dust 是一个提供文件类型和元数据的工具。如果你在一个目录中运行了 dust,它将以几种方式报告该目录的磁盘利用率。它提供了一个信息量很大的图表,告诉你哪个文件夹使用的磁盘空间最大。如果有嵌套的文件夹,你可以看到每个文件夹使用的空间百分比。

安装 dust

你可以使用 Rust 的 Cargo 包管理器安装 dust

代码语言:javascript
复制
$ cargo install du-dust

另外,你可以在 Linux 上的软件库中找到它,在 macOS 上,可以使用 MacPorts 或 Homebrew。

探索 dust

在一个目录中执行 dust 命令,会返回一个图表,以树状格式显示其内容和每个项目所占的百分比。

代码语言:javascript
复制
/*
* 提示:该行代码过长,系统自动注释不进行高亮。一键复制会移除系统注释 
* $ dust 5.7M   ┌── exa                                                           │                                                ██ │   2% 5.9M   ├── tokei                                                         │                                                ██ │   2% 6.1M   ├── dust                                                          │                                                ██ │   2% 6.2M   ├── tldr                                                          │                                                ██ │   2% 9.4M   ├── fd                                                            │                                                ██ │   4% 2.9M   │ ┌── exa                                                         │                                              ░░░█ │   1%  15M   │ ├── rustdoc                                                     │                                              ░███ │   6%  18M   ├─┴ bin                                                           │                                              ████ │   7%  27M   ├── rg                                                            │                                            ██████ │  11% 1.3M   │     ┌── libz-sys-1.1.3.crate                                    │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░█ │   0% 1.4M   │     ├── libgit2-sys-0.12.19+1.1.0.crate                         │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░█ │   1% 4.5M   │   ┌─┴ github.com-1ecc6299db9ec823                               │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░█ │   2% 4.5M   │ ┌─┴ cache                                                       │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░█ │   2% 1.0M   │ │   ┌── git2-0.13.18                                            │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓▓█ │   0% 1.4M   │ │   ├── exa-0.10.1                                              │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓▓█ │   1% 1.5M   │ │   │ ┌── src                                                   │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓▓█ │   1% 2.2M   │ │   ├─┴ idna-0.2.3                                              │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓▓█ │   1% 1.2M   │ │   │       ┌── linux                                           │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓▓█ │   0% 1.6M   │ │   │     ┌─┴ linux_like                                        │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓▓█ │   1% 2.6M   │ │   │   ┌─┴ unix                                                │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓▓█ │   1% 3.1M   │ │   │ ┌─┴ src                                                   │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓▓█ │   1% 3.1M   │ │   ├─┴ libc-0.2.94                                             │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓▓█ │   1% 1.2M   │ │   │     ┌── test                                              │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓▓█ │   0% 2.6M   │ │   │   ┌─┴ zlib-ng                                             │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓▓█ │   1% 904K   │ │   │   │   ┌── vstudio                                         │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓▓█ │   0% 2.0M   │ │   │   │ ┌─┴ contrib                                           │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓▓█ │   1% 3.4M   │ │   │   ├─┴ zlib                                                │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓▓█ │   1% 6.1M   │ │   │ ┌─┴ src                                                   │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓██ │   2% 6.1M   │ │   ├─┴ libz-sys-1.1.3                                          │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓██ │   2% 1.6M   │ │   │     ┌── pcre                                              │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓▓█ │   1% 2.5M   │ │   │   ┌─┴ deps                                                │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓▓█ │   1% 3.8M   │ │   │   ├── src                                                 │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓▓█ │   1% 7.4M   │ │   │ ┌─┴ libgit2                                               │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓██ │   3% 7.6M   │ │   ├─┴ libgit2-sys-0.12.19+1.1.0                               │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░▓▓▓▓██ │   3%  26M   │ │ ┌─┴ github.com-1ecc6299db9ec823                               │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██████ │  10%  26M   │ ├─┴ src                                                         │               ░░░░░░░░░░░░░░░░░░░░░░░░░░░░░██████ │  10% 932K   │ │   ┌── .cache                                                  │               ░░░░░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓█ │   0%  11M   │ │   │     ┌── pack-c3e3a51a17096a3078196f3f014e02e5da6285aa.idx │               ░░░░░░▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓███ │   4% 135M   │ │   │     ├── pack-c3e3a51a17096a3078196f3f014e02e5da6285aa.pack│               ░░░░░░▓▓███████████████████████████ │  53% 147M   │ │   │   ┌─┴ pack                                                │               ░░░░░░█████████████████████████████ │  57% 147M   │ │   │ ┌─┴ objects                                               │               ░░░░░░█████████████████████████████ │  57% 147M   │ │   ├─┴ .git                                                    │               ░░░░░░█████████████████████████████ │  57% 147M   │ │ ┌─┴ github.com-1ecc6299db9ec823                               │               ░░░░░░█████████████████████████████ │  57% 147M   │ ├─┴ index                                                       │               ░░░░░░█████████████████████████████ │  57% 178M   ├─┴ registry                                                      │               ███████████████████████████████████ │  69% 257M ┌─┴ .                                                               │██████████████████████████████████████████████████ │ 100%$
*/

将 dust 应用于一个特定的目录:

代码语言:javascript
复制
$ dust ~/Work/

Dust output from a specific directory

-r 选项以相反的顺序显示输出,“根”在底部:

代码语言:javascript
复制
$ dust -r ~/Work/

使用 dust -d 3 会返回三层的子目录和它们的磁盘利用率:

代码语言:javascript
复制
$ dust -d 3 ~/Work/wildfly/jaxrs/target/classes 4.0K     ┌── jaxrs.xml                                                           │                                         █ │   1% 4.0K   ┌─┴ subsystem-templates                                                   │                                         █ │   1% 4.0K   │   ┌── org.jboss.as.controller.transform.ExtensionTransformerRegistration│                                         █ │   1% 4.0K   │   ├── org.jboss.as.controller.Extension                                 │                                         █ │   1% 8.0K   │ ┌─┴ services                                                            │                                         █ │   2% 8.0K   ├─┴ META-INF                                                              │                                         █ │   2% 4.0K   │ ┌── jboss-as-jaxrs_1_0.xsd                                              │                                        ░█ │   1% 8.0K   │ ├── jboss-as-jaxrs_2_0.xsd                                              │                                        ░█ │   2%  12K   ├─┴ schema                                                                │                                        ██ │   3% 408K   │   ┌── as                                                                │  ████████████████████████████████████████ │  94% 408K   │ ┌─┴ jboss                                                               │  ████████████████████████████████████████ │  94% 408K   ├─┴ org                                                                   │  ████████████████████████████████████████ │  94% 432K ┌─┴ classes                                                                 │██████████████████████████████████████████ │ 100%$

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 安装 dust
  • 探索 dust
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档