Starship
跨 Shell 極速提示字元
軟體分類 生產力 / 系統工具
軟體標籤
rated-1CMSAutomation toolsReport editing
開發廠商 Starship Contributors
產品說明
Starship 是一款用 Rust 語言編寫的跨 Shell 提示符(Prompt)。如果你厭倦了終端機預設那串單調的 user@hostname:~$,或者覺得 Oh My Zsh 雖然漂亮但隨著外掛變多而日益卡頓,那麼 Starship 就是你的救星。
它的核心理念是「極致輕量」與「情境感知」。Starship 適用於任何 Shell(Bash, Zsh, Fish, PowerShell),並能智慧地根據你當前的目錄顯示相關資訊。例如:當你進入一個 Git 專案資料夾,它會自動顯示分支與狀態;當你進入包含 package.json 的目錄,它會顯示 Node.js 的版本號;如果是 Rust 專案則顯示螃蟹圖示。最重要的是,得益於 Rust 的高效能,它幾乎是零延遲的,輸入指令時不再有滯後感。
核心特色:
- 跨 Shell 支援:只需設定一次,無論你使用 PowerShell、Bash 還是 Zsh,都能擁有一致的體驗。
- 情境感知模組:內建 Git、Docker、AWS、Node.js、Python、Rust 等數十種模組,只在需要時才顯示,保持畫面整潔。
- 極速效能:基於 Rust 開發,啟動與渲染速度極快,不會像傳統 Shell Theme 拖慢終端反應。
- 高度客製化:透過單一 TOML 設定檔即可調整所有圖示、顏色與排序,無需學習複雜的 Shell Script。
- 字型支援:完美支援 Nerd Fonts,讓你的終端機充滿現代感的圖示與符號。
常用指令
Starship 本質上是一個執行檔,透過 Shell 的 Hook 機制運作。以下是安裝與設定的關鍵指令:
安裝與啟用
# Linux / macOS 一鍵安裝
curl -sS [https://starship.rs/install.sh](https://starship.rs/install.sh) | sh
# 在 ~/.zshrc (或 .bashrc) 的最後加入這行以啟用
eval "$(starship init zsh)"
# 重新載入 Shell 設定
source ~/.zshrc
設定與自訂
Starship 的所有設定都集中在 ~/.config/starship.toml 檔案中。
# 範例:starship.toml 設定檔
# 自訂字元取代預設的 ❯
[character]
success_symbol = "[➜](bold green)"
error_symbol = "[✗](bold red)"
# 設定 Git 分支顯示格式
[git_branch]
symbol = "🌱 "
truncation_length = 4
truncation_symbol = ""
# 停用特定模組 (例如不顯示 AWS 資訊)
[aws]
disabled = true
| 指令/設定 | 功能說明 | 應用場景 |
|---|---|---|
starship preset | 預設主題 | 快速輸出不同風格的設定檔 (如 nerd-font-symbols, pastel-powerline) 以供複製 |
starship explain | 模組解釋 | 顯示當前提示符中各個圖示代表的模組與執行時間 (Debug 用) |
starship time | 時間測試 | 測試 Starship 產生提示符所需的毫秒數,驗證其效能 |
starship toggle | 切換模組 | 透過指令列暫時開關特定模組 (需配合設定) |
進階技巧
- 預設主題 (Presets):不知道怎麼配色?可以使用
starship preset nerd-font-symbols > ~/.config/starship.toml直接套用官方提供的精美主題。 - 命令執行時間:Starship 內建
cmd_duration模組,若上一個指令執行時間過長(例如超過 2 秒),它會自動在提示符旁顯示耗時,提醒你剛才跑了多久。 - 雲端環境提示:對於 DevOps 工程師,它可以偵測當前的 AWS Profile 或 Kubernetes Context 並顯示在提示符上,防止在錯誤的環境下執行指令(例如誤刪正式環境資料)。
操作介面

