10 款更先进的开源命令行工具

Linux 诞生于 1991 年,我们熟知的 lscdps 等命令也出生于那个年代。虽然它们都是 30 年前的产物,但是我们现在依旧每天都在用这些命令。

也许是审美疲劳又或是好奇心作祟,你可曾好奇过:“这么多年过去了,开源世界里有没有可以替代这些“老态龙钟”的 Linux 命令,或者是更加好用的命令行工具呢?”

今天 HelloGitHub 就整理了 10 款开源命令行工具,这些开源项目不仅实现了 和 Linux 命令相同的功能,而且它们与时俱进地加入更多新功能,从而在使用方式、性能和展示效果上更胜一筹,比如:更加人性化的参数设计、一目了然的展示效果、支持跨平台等。所以我称它们为:更先进的命令行工具!

下面就让我们一同走进这些让人相见恨晚、爱不释手的开源命令行工具吧。

为阅读起来更加直观,我把标题设定成了 编号:项目名(可替代的命令)

1:dust(du)

  • 编程语言:Rust(96%)

  • Star 数:4.4k

  • 可替代:du 命令

  • 介绍:能够一目了然地展示目录和文件大小的命令行工具。使用时无需加额外的参数,即可展示当前目录下的文件和目录的大小、包含的子目录列表(树状)以及占用空间的百分比(条形图)。

  • 用法:dust

  • 适用平台:Windows、Linux、macOS

  • 地址:https://github.com/bootandy/dust

2:duf(df)

  • 编程语言:Go(94%)

  • Star 数:9.3k

  • 可替代:df 命令

  • 介绍:通过彩色表格的方式展示磁盘使用情况的工具。不仅对设备进行了分类,还支持结果排序。

  • 用法:duf

  • 适用平台:Windows、Linux、macOS

  • 地址:https://github.com/muesli/duf

3:procs(ps)

  • 编程语言:Rust(99%)

  • Star 数:3k

  • 可替代:ps 命令

  • 介绍:能够展示进程占用的 TCP/UDP 端口、Docker 容器名称等更多信息的命令行进程管理工具,以及轻松地按列排序和关键字过滤进程。

  • 用法:procs 待过滤的关键字

  • 适用平台:Linux、macOS 和 Windows 上存在一些问题

  • 地址:https://github.com/dalance/procs

4:bottom(top)

  • 编程语言:Rust(99%)

  • Star 数:4.4k

  • 可替代:top 命令

  • 介绍:图形化实时监控进程和系统资源的工具。支持实时展示 CPU、内存、硬盘、网络、进程、温度等指标,而且还可通过插件扩展可视化效果,相较于其它同类型的开源项目,该项目更加活跃。

  • 用法:btm

  • 适用平台:Windows、Linux、macOS

  • 地址:https://github.com/ClementTsang/bottom

5:exa(ls)

  • 编程语言:Rust(92%)

  • Star 数:18.4k

  • 可替代:ls 命令

  • 介绍:更加人性化地显示目录下文件的工具。它通过不同颜色展示来区别文件类型,还支持以树状的方式展示文件层级、展示 Git 状态等方便的功能。

  • 用法:exa -l

  • 适用平台:Linux、macOS

  • 地址:https://github.com/ogham/exa

6:zoxide(cd)

  • 编程语言:Rust(98%)

  • Star 数:6.9k

  • 可替代:cd 命令

  • 介绍:更聪明的 cd 命令。能够记住你最常使用的目录,从而让目录跳转更加方便和快捷。

  • 用法:z 目录

  • 适用平台:Windows、Linux、macOS

  • 地址:https://github.com/ajeetdsouza/zoxide

7:ripgrep(grep)

  • 编程语言:Rust(94%)

  • Star 数:45.6k

  • 可替代:grep 命令

  • 介绍:超快的文本搜索工具。不仅快还更加人性化,比如自动忽略 .gitignore 中的文件、自动递归搜索、自动高亮展示匹配的结果。

  • 用法:rg '关键字' 目录

  • 适用平台:Windows、Linux、macOS

  • 地址:https://github.com/BurntSushi/ripgrep

另外,HelloGitHub 之前还发过一篇文章,详细介绍了搜索文件的开源项目:fd(find)的使用方法。

8:bat(cat)

  • 编程语言:Rust(95%)

  • Star 数:35.6k

  • 可替代:cat 命令

  • 介绍:默认就带自动翻页、行号、语法高亮、Git 集成等功能的升级版文件查看工具。

  • 用法:bat 文件名

  • 适用平台:Windows、Linux、macOS

  • 地址:https://github.com/sharkdp/bat

9:httpie(curl)

  • 编程语言:Python(92%)

  • Star 数:22.4k

  • 可替代:curlwget 命令

  • 介绍:全能但不臃肿的命令行 HTTP 客户端。使用起来极其方便,支持请求、会话、下载、JSON 等功能。该项目经历了 Star 清零的事件(误操作),这才不到一年的时间,现在已经拥有超过 2 万的 Star 啦!

  • 用法:http/https 地址

  • 适用平台:Windows、Linux、macOS

  • 地址:https://github.com/httpie/httpie

10:hyperfine(time)

  • 编程语言:Rust(93%)

  • Star 数:11.9k

  • 可替代:time 命令

  • 介绍:强大的命令行基准测试工具。支持任意 shell 命令、多次运行的统计分析和结果导出。

  • 用法:hyperfine '命令1' '命令2'

  • 适用平台:Windows、Linux、macOS

  • 地址:https://github.com/sharkdp/hyperfine

最后

时代在发展,技术在进步。没有永久先进的工具,只有青出于蓝、更加好用的利器。

由于篇幅问题,本文只列举了 10 款可替代 Linux 命令的开源项目。如果想了解更多此类项目,这还有个开源项目:modern-unix,它包含了 28 个常用的 Linux 命令的替代品。

地址:https://github.com/ibraheemdev/modern-unix

最后,如果本文分享的开源项目有帮助到你,请记给它们点一个 Star,开源不易多行善举。

本文文字及图片出自 HelloGitHub

余下全文(1/3)
分享这篇文章:

请关注我们:

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注