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

dust 命令是用 Rust 编写的对 du 命令的一个更直观实现。

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

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

安装 dust

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

$ cargo install du-dust

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

探索 dust

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

$ dust5.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 应用于一个特定的目录:

$ dust ~/Work/


Dust output from a specific directory

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

$ dust -r ~/Work/

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

$ dust -d 3 ~/Work/wildfly/jaxrs/target/classes4.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%
$

总结

dust 的魅力在于它是一个小而简单的、易于理解的命令。它使用颜色方案来表示最大的子目录,使你的目录易于可视化。这是一个受欢迎的项目,欢迎大家来贡献。

在 Linux 上用 dust 代替 du更直观相关推荐

  1. du -sh 如何找到最大的文件夹_小白必看!手把手教你如何在linux上安装redis数据库...

    首先我们要清楚redis是什么? redis是一种非关系型数据库,它与MySQL的这种关系型数据库不同,MySQL是将数据存储在磁盘中,而redis是储存在内存中.一般很多公司都是使用MySQL+re ...

  2. linux没有找到可用磁盘,在Linux上,有没有一种更像python的方法来获取可用磁盘设备名的列表?...

    编辑我不明白为什么这被标记为重复,因为标识的重复需要导入pyudev.甚至不可能是复制品.在 这很管用,但感觉"蛮力".在 有没有一种更像python的方法来获取Linux上可用磁 ...

  3. linux uniq命令_如何在Linux上使用uniq命令

    linux uniq命令 Fatmawati Achmad Zaenuri/ShutterstockFatmawati Achmad Zaenuri / Shutterstock The Linux ...

  4. 第5章 Linux上管理文件系统

    5.1 机械硬盘 机械硬盘由多块盘片组成,它们都绕着主轴旋转.每块盘片上下方都有读写磁头悬浮在盘片上下方,它们与盘片的距离极小.在每次读写数据时盘片旋转,读写磁头被磁臂控制着不断的移动来读取其中的数据 ...

  5. linux压缩软件图形,Linux上压缩PNG图像 互联网技术圈 互联网技术圈

    Pngquant是一款免费的开源和跨平台命令行有损PNG压缩器.它基于可移植的libimagequant库,用C99编写.通过将PNG图像转换为更高效的8位 PNG格式并保留完整的Alpha透明度,它 ...

  6. Linux上管理文件系统

    1 机械硬盘 机械硬盘由多块盘片组成,它们都绕着主轴旋转.每块盘片上下方都有读写磁头悬浮在盘片上下方,它们与盘片的距离极小.在每次读写数据时盘片旋转,读写磁头被磁臂控制着不断的移动来读取其中的数据. ...

  7. linux服务器 图片压缩,Pngquant:Linux上压缩PNG图像的命令行实用工具

    [51CTO.com快译]Pngquant是一款免费开源的跨平台命令行有损PNG压缩工具.它基于可移植的libimagequant库,用C99编写.可通过将PNG图像转换成更高效的8位PNG格式来显著 ...

  8. 在Linux上利用python获取本机ip

    下面介绍在Linux上利用python获取本机ip的方法. 经过网上调查, 发现大致有两种方法, 一种是调用shell脚本,另一种是利用python中的socket等模块来得到,下面是这两种方法的源码 ...

  9. Linux 上 12 个高效的文本过滤命令

    在这篇文章中,我们将会看一些 Linux 中的过滤器命令行工具.过滤器是一个程序,它从标准输入读取数据,在数据上执行操作,然后把结果写到标准输出. 因此,它可以用来以强大的方式处理信息,例如重新结构化 ...

最新文章

  1. Windows 和 Linux 应用程序从上到下调用层次比较
  2. 如何设计一个复杂的业务系统?从对领域设计、云原生、微服务、中台的理解开始...
  3. 【PP操作手册】生产订单的查询
  4. mysql 6.2使用_2. MYSQL基本使用(2)
  5. XCTF-高手进阶区:php_rce
  6. java launcher 下载_Java Launcher下载并安装
  7. Java基础学习总结(181)——Nacos、Apollo、Config配置中心如何选型?
  8. linux简单命令3---帮助命令
  9. JAVA NP插件,特定的宽度600,插件就不显示
  10. Struts+Hibernate系列教材 (一)- 整合Struts和Hibernate教程
  11. 并行运算遇到的fatal error(已解决)
  12. Mybatis+MySql中字段名为保留字(关键字)的情况
  13. 检测和缓解PLC恶意软件的过程计算方法
  14. 虚拟机CentOS6.5修改静态IP(NAT模式)+报错:Bringing up interface eth0:  Error: Unknown connection
  15. Tomcat-Connector(连接器)
  16. 买菜App综合服务水平排行:盒马、多点、每日优鲜排前三
  17. 敏捷方法 - 极限编程与工程实践
  18. linux添加有效群组,Linux中的有效群组和初始群组
  19. V2V Data Offloading for Cellular Network Based on the SDN Inside MEC Architecture 学习笔记
  20. zendstiduo背景色设置为保护眼睛的颜色》》》

热门文章

  1. 模板引擎-模板引擎渐进进化
  2. 爬虫之谷歌浏览器xpath helper插件的安装和使用
  3. ubuntu18.04 实现中文化 中文输入法
  4. CNVD初次获取的源代码格式
  5. Linux centos7 利用公钥,私钥实现免密登录SSH
  6. N 年沉淀,机器学习终于开源!
  7. 一种全自动的牙齿CBCT三维个体识别和分割方法
  8. Leetcode (396 旋转函数)
  9. 猫哥教你写爬虫 046--协程-实践-吃什么不会胖
  10. 想要去阿里面试?你必须得跨过 JVM 这道坎!