作為開發者,我們每天都在終端機中花費大量時間。選擇合適的命令列工具可以顯著提升工作效率。今天為大家介紹 5 款在 2026 年值得關注的開源 CLI 工具,它們各自解決了開發過程中的常見痛點。

1. gping - 帶圖形視覺化的網路監控工具

傳統的 ping 指令只能顯示數字輸出,而 gping 將 ping 結果以即時圖形方式展示,讓你一目了然地看到網路延遲變化趨勢。

核心特性

  • 📊 即時圖形化顯示 ping 延遲
  • 🎨 支援自訂顏色主題
  • 💻 跨平台支援(Windows、Mac、Linux)
  • ⚡ 可同時監控多個主機
  • 🔧 支援透過 --cmd 標誌監控指令執行時間

安裝方法

Linux (Cargo):

cargo install gping

Linux (Homebrew):

brew install gping

Windows (Scoop):

scoop install gping

使用範例

# 監控單個主機
gping google.com

# 監控多個主機
gping google.com github.com 8.8.8.8

# 監控指令執行時間
gping --cmd "ls -la /var/log"

# 使用自訂顏色
gping --color "#00ff00" google.com

gping 範例輸出

專案位址: https://github.com/orf/gping


2. croc - 安全便捷的檔案傳輸工具

croc 是一款革命性的檔案傳輸工具,它讓任何兩台電腦之間都能簡單安全地傳輸檔案和資料夾。與其他工具不同,croc 使用中繼輔助的點對點傳輸,無需開放連接埠或設定防火牆。

核心特性

  • 🔐 端到端加密傳輸(使用 PAKE 協定)
  • 🔄 支援斷點續傳
  • 🌐 跨平台支援所有作業系統
  • 🚀 多通道傳輸提升速度
  • 📁 支援檔案和資料夾傳輸

安裝方法

Linux/macOS:

curl https://getcroc.schollz.com | bash

使用 Go:

go install github.com/schollz/croc/v10@latest

Windows (Chocolatey):

choco install croc

使用範例

傳送檔案:

# 傳送單個檔案
croc send document.pdf

# 傳送資料夾
croc send ./project-folder

# 傳送多個檔案
croc send file1.txt file2.txt file3.txt

接收檔案:

# 使用傳送方提供的代碼接收
croc <transfer-code>

# 範例:croc 1234-example-code

croc 的最大亮點是無需設定:傳送方執行指令後會自動產生一個代碼,接收方在另一台機器上輸入相同代碼即可開始傳輸。所有傳輸都透過中繼伺服器進行加密,確保安全性。

專案位址: https://github.com/schollz/croc


3. dasel - 強大的資料查詢和轉換工具

dasel (data selector) 是一款用於查詢和轉換各種資料格式的工具。它支援 JSON、YAML、TOML、XML、CSV 等多種格式,使用類似 SQL 的選擇器語法。

核心特性

  • 📄 支援 JSON、YAML、TOML、XML、CSV 等格式
  • 🔍 強大的選擇器語法
  • 🔄 格式間相互轉換
  • ⚡ 單一二進制檔案,無需相依性
  • 🎯 支援條件篩選和排序

安裝方法

使用 Go:

go install github.com/TomWright/dasel/v2@latest

下載二進制檔案:

# Linux
wget https://github.com/TomWright/dasel/releases/latest/download/dasel_linux_amd64 -O /usr/local/bin/dasel
chmod +x /usr/local/bin/dasel

# macOS
wget https://github.com/TomWright/dasel/releases/latest/download/dasel_darwin_amd64 -O /usr/local/bin/dasel
chmod +x /usr/local/bin/dasel

使用範例

# 從 JSON 中選擇特定欄位
dasel -f data.json 'users.*.name'

# 從 YAML 轉換為 JSON
dasel -r yaml -w json < config.yaml

# 條件篩選
dasel -f users.json 'users.*.where(active==true).name'

# 處理 API 回應
curl https://api.example.com/users | dasel 'data.*.email'

實際場景: 當你需要快速從複雜的 JSON 回應中提取特定欄位,或者在不同設定格式之間轉換時,dasel 比寫 Python 腳本快得多。

專案位址: https://github.com/TomWright/dasel


4. qsv - 高效能 CSV 資料處理工具

qsv 是一個用 Rust 編寫的超快速 CSV 資料處理工具集。它提供了類似 SQL 的功能來處理 CSV 檔案,速度比傳統工具快 10-100 倍。

核心特性

  • ⚡ 極速處理(Rust 編寫,多執行緒)
  • 📊 支援大型 CSV 檔案(GB 等級)
  • 🔧 40+ 個子指令(篩選、統計、轉換等)
  • 📈 內建統計分析功能
  • 🔗 支援遠端 URL 和壓縮檔案

安裝方法

Linux/macOS (預編譯二進制):

curl -LJO https://github.com/dathere/qsv/releases/latest/download/qsv-linux.zip
unzip qsv-linux.zip
sudo mv qsv /usr/local/bin/

使用 Cargo:

cargo install qsv

使用範例

# 檢視 CSV 檔案統計資訊
qsv stats data.csv

# 篩選特定行
qsv select name,email,age data.csv | qsv search -s age '^2[0-9]$'

# 排序
qsv sort -s age -n data.csv > sorted.csv

# 去重
qsv dedup data.csv > unique.csv

# 轉置(行列互換)
qsv transpose data.csv

# 取樣
qsv sample 100 data.csv > sample.csv

效能對比: 處理 100 萬行 CSV 檔案,qsv 只需幾秒,而傳統工具可能需要幾分鐘。

專案位址: https://github.com/dathere/qsv


5. grex - 智能正規表示式產生器

grex 是一款指令行工具,可以根據測試字串自動產生正規表示式。再也不用手動編寫複雜的正則了!

核心特性

  • 🤖 根據範例自動產生正規表示式
  • 📝 支援多種程式語言輸出
  • 🎯 精確匹配或通用模式
  • 🔧 可訂製產生選項
  • 📚 支援從檔案讀取測試案例

安裝方法

使用 Cargo:

cargo install grex

使用 Homebrew:

brew install grex

下載二進制:

# Linux
wget https://github.com/pemistahl/grex/releases/latest/download/grex-x86_64-linux
chmod +x grex-x86_64-linux
sudo mv grex-x86_64-linux /usr/local/bin/grex

使用範例

# 根據範例產生正規表示式
grex 123 456 789
# 輸出:^\d+$

# 產生電子郵件匹配正規表示式
grex user@example.com admin@test.org
# 輸出:^[a-zA-Z]+@[a-zA-Z]+\.[a-zA-Z]+$

# 指定程式語言輸出
grex --programming-languages python 192.168.1.1 10.0.0.1

# 從檔案讀取測試案例
grex --file test-cases.txt

# 產生通用模式(更寬鬆)
grex --universal 2024-01-15 2024-02-20 2024-03-25

實際場景: 當你需要驗證使用者輸入、剖析日誌檔案或提取特定格式的資料時,grex 可以快速產生可靠且正確的正規表示式,避免手動編寫錯誤。

專案位址: https://github.com/pemistahl/grex


總結對比

工具 主要用途 安裝難度 學習曲線
gping 網路監控
croc 檔案傳輸
dasel 資料查詢 ⭐⭐ ⭐⭐
qsv CSV 處理 ⭐⭐ ⭐⭐⭐
grex 正規表示式產生

為什麼選擇這些工具?

  1. 開源免費 - 所有工具都是開源的,可以自由使用和貢獻
  2. 跨平台 - 支援 Linux、macOS、Windows
  3. 活躍維護 - 專案持續更新,社群活躍
  4. 解決實際問題 - 每個工具都針對開發中的具體痛點
  5. 效能優秀 - 大多使用 Rust/Go 編寫,速度快

開始使用

建議從 gpingcroc 開始,它們最容易上手且立竿見影。熟悉後可以嘗試更強大的 daselqsv 來處理複雜的資料任務。

這些工具已經整合到我的日常工作流程中,顯著提升了效率。希望它們也能幫助你提升命令列工作效率!


參考資料: