10 款更先進的開源命令列工具

2022-07-13 09:00:20

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 命令的替代品。

最後,如果本文分享的開源專案有幫助到你,請記給它們點一個 Star,開源不易多行善舉。

以上就是本期的所有內容,如果您覺得這期內容還不錯:求贊、求收藏、求轉發,您的支援就是對我最大的鼓勵!